JavaScript数组方法分为原地修改和返回新数组两类:push/pop/unshift/shift/splice/reverse/sort/fill会改变原数组;map/filter/slice/concat/flat/toSorted/toReversed/toSpliced则返回新数组且不改变原数组。
JavaScript中有些数组方法会直接修改原数组,有些则返回新数组而不影响原始数据。区分这两类方法对避免意外副作用很关键。
这些方法在调用后,原始数组的内容、长度或顺序会发生变化:
这些方法生成并返回一个新数组,原数组保持不变:
有些方法看似“安全”,但需注意细节:
、findIndex()、includes() 等只读方法完全不影响原数组日常开发中推荐: