我正在尝试使用Javascript reverse()方法,当我在反转数组后控制台注销该数组时,它仍然保持以前的顺序。这是我的代码:
var logos = <?php echo json_encode($logos); ?>;
var logoArray = logos.reverse();
console.log(logos);
console.log(logoArray);
我正在从PHP和json对数组进行编码。然后,我将使用该数组并运行reverse()方法以反转数组项的顺序。当我然后console.log输出每个数组时,它们是相同的,而不是第二个数组相反。
我似乎无法弄清楚是什么原因导致了此问题?
答案 0 :(得分:1)
reverse()
确实改变了数组,因此logos
被颠倒了。 logoArray
只是对logos
的引用。
要获取其他数组并将其反转,请使用.slice
:
var logoArray = logos.slice().reverse();