在Javascript中,如果我们使用reverse()或toReversed()反转数组,两者都有相同的输出,它们有何不同?
在 JavaScript 中,
reverse()
和 toReversed()
是用于反转数组中元素顺序的方法,但它们在行为和用法上有关键区别。
一个使用引用复制,另一个使用按值复制。
反向():
const arr = [1, 2, 3];
const reversedArr = arr.reverse();
console.log(arr); // Output: [3, 2, 1]
console.log(reversedArr); // Output: [3, 2, 1]
toReversed():
const arr = [1, 2, 3];
const newArr = arr.toReversed();
console.log(arr); // Output: [1, 2, 3]
console.log(newArr); // Output: [3, 2, 1]
用例:
当您需要原地反转数组且不需要保留原始顺序时,请使用
reverse()
。
当您需要反转数组但又需要保持原始数组不变时,请使用
toReversed()
。