Javascript 使用某些方法时变量会发生变化

Javascript 使用某些方法时变量会发生变化,javascript,arrays,Javascript,Arrays,假设我有一个名为array的变量: var array = [1,2,3] 当我使用reverse()方法时,它会按预期反转数组 array.reverse() 但是假设我想保留原始变量,所以我创建了一个“临时”变量 但数组也是反向的。 如何知道原始变量何时更改,何时不更改 如果你能帮忙,谢谢你试试这个 var array = [1,2,3] var arrayRev =[...array].reverse() console.log(arrayRev) console.log(array)

假设我有一个名为array的变量:

var array = [1,2,3]
当我使用
reverse()
方法时,它会按预期反转数组

array.reverse()
但是假设我想保留原始变量,所以我创建了一个“临时”变量

但数组也是反向的。 如何知道原始变量何时更改,何时不更改

如果你能帮忙,谢谢你试试这个

var array = [1,2,3]
var arrayRev =[...array].reverse()
console.log(arrayRev)
console.log(array)

您需要了解这些方法,无论它们是否进行了适当的更改。reverse会在适当的位置进行更改,从而更改原始变量值。
arrayRev=array.slice().reverse()
当您使用api函数时,最好参考其文档:声明函数是破坏性的,它会更改原始数组
var array = [1,2,3]
var arrayRev =[...array].reverse()
console.log(arrayRev)
console.log(array)