gpt4 book ai didi

javascript - 为什么 Array.prototype.sort 在 Chrome 中有不同的行为?

转载 作者:行者123 更新时间:2023-12-01 16:18:16 24 4
gpt4 key购买 nike

<分区>

我试图对一个数组进行排序,我在 Chrome V79 中得到了与 Firefox Dev Edition V72 不同的行为(均为桌面版)。

这是测试,

console.log([4, 2, 5, 1, 3].sort((a, b) => a>b));
console.log(Array.prototype.sort.call([4, 2, 5, 1, 3], (a, b) => a>b));

在 Firefox Dev 中,我得到了这个结果,

Firefox Test Result

但是在 Chrome 中,为什么我会得到这个结果,

1st Chrome Test Result

但是当我用 var 传递同一个数组时,我明白了,

2nd Chrome Test Result

但是是的,它对数组进行排序并重写变量,但返回数组的未排序版本。因此,当我在没有任何 var 的情况下直接传递数组时,我没有进行排序。但是,

根据MDN's reference page它不应该返回排序后的数组吗??

为什么会有差异??

Note: In the Example Imgs, there are two exmaple's I was practicing call func. And forgot to remove it. So, just ignore it. Both of 'em are same.

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