gpt4 book ai didi

javascript - 如何在 javascript 中对数组进行排序而不修改它?

转载 作者:行者123 更新时间:2023-11-28 12:25:45 25 4
gpt4 key购买 nike

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/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com