gpt4 book ai didi

javascript - js输出未排序的数组

转载 作者:行者123 更新时间:2023-11-30 07:15:08 28 4
gpt4 key购买 nike

我有以下代码,它也在 this fiddle 中.
我在下面列出了输出和预期输出。我不明白为什么我还没有对 rNums 进行排序,它仍然输出 sorterd 结果?

如果我注释掉 sort 函数,那么 random 会按我的意愿出现,但不会按顺序出现。我在这里做错了什么?

随机应该按nNums显示,有序应该按数字顺序显示?

    <ul id="random"></ul>
<ul id="ordered"></ul>

<script>
var rNums = [1,5,3,2,4];
console.log(rNums);
var sortRNums = rNums;

sortRNums.sort(function (a, b) {
return a - b
});

$.each(rNums, function (index, value) {
$("#random").append('<li>' + value + '</li>');
});

$.each(sortRNums, function (index, value) {
$("#ordered").append('<li>' + value + '</li>');
});
console.log(sortRNums);
</script>

输出

    <ul id="random">
<li>1</li>
<li>2</li>
<li>3</li>
<li>4</li>
<li>5</li>
</ul>

<ul id="ordered">
<li>1</li>
<li>2</li>
<li>3</li>
<li>4</li>
<li>5</li>
</ul>

预期输出

    <ul id="random">
<li>1</li>
<li>5</li>
<li>3</li>
<li>2</li>
<li>4</li>
</ul>

<ul id="ordered">
<li>1</li>
<li>2</li>
<li>3</li>
<li>4</li>
<li>5</li>
</ul>

最佳答案

sort 修改原始数组,您需要在排序前创建一个副本。

var sortRNums = rNums.slice(0);

关于javascript - js输出未排序的数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24779315/

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