Javascript 反转数组时,将保持原始顺序
我正在尝试反转typescript中的数组。以下是原始阵列的外观: 但是当我在数组上调用Javascript 反转数组时,将保持原始顺序,javascript,typescript,Javascript,Typescript,我正在尝试反转typescript中的数组。以下是原始阵列的外观: 但是当我在数组上调用reverse()时,它是不变的: 建议是一个数组数组,声明如下: recommendations: any; 并举例说明: me.recommendations = [[]]; 有人能告诉我为什么阵列没有反转,以及如何解决此问题吗 谢谢问题在于[].reverse()的行为与您预期的不同。 reverse更改数组本身的值,因此数组将被反转,只需在此之后检查变量whatever和yup 因此数组本身是
reverse()
时,它是不变的:
建议
是一个数组数组,声明如下:
recommendations: any;
并举例说明:
me.recommendations = [[]];
有人能告诉我为什么阵列没有反转,以及如何解决此问题吗
谢谢问题在于[].reverse()的行为与您预期的不同。
reverse
更改数组本身的值,因此数组将被反转,只需在此之后检查变量whatever
和yup
因此数组本身是反向的,您刚刚对该对象进行了两次引用。数组已反向。你在调试器中欺骗了自己
reverse
在位反转数组并返回对数组的引用。换句话说,
> var x = [1, 2, 3];
> var y = x.reverse();
> x
[3, 2, 1]
> y
[3, 2, 1]
> x === y
true
console.log([1,2,3].reverse())
在同一上下文中说什么?没关系,见下文:)