作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
javascript 中的
array.sort()
修改底层数组:
> a = [5,1,3]
[ 5, 1, 3 ]
> a.sort()
[ 1, 3, 5 ]
> a
[ 1, 3, 5 ]
>
是否有办法对未就位的数组进行排序,以便排序后的版本作为副本返回。像这样吗?
> a = [5,1,3]
[ 5, 1, 3 ]
> b = a.some_function()
[ 1, 3, 5 ]
> a
[ 5, 1, 3 ]
> b
[ 1, 3, 5 ]
最佳答案
如果没有编写自己的函数来做到这一点,就不行。当然,您可以克隆并然后排序:
var b = a.slice(0).sort();
示例:
var a = [5,1,3];
var b = a.slice(0).sort();
snippet.log("a: " + JSON.stringify(a));
snippet.log("b: " + JSON.stringify(b));
<!-- Script provides the `snippet` object, see http://meta.stackexchange.com/a/242144/134069 -->
<script src="http://tjcrowder.github.io/simple-snippets-console/snippet.js"></script>
关于javascript - 如何在 javascript 中对数组进行排序而不修改它?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29088058/
我是一名优秀的程序员,十分优秀!