首页 > 试题广场 >

下列哪个方法不能改变自身数组?

[单选题]
下列哪个方法不能改变自身数组?
  • splice
  • concat
  • sort
  • pop
concat连接数组但是不改变院数组,splice删除数据会改变数组,sort排序会改变数组,pop出栈返回最后一个最后一个元素,改变数组
发表于 2019-09-15 20:48:02 回复(2)
splice() 方法通过删除或替换现有元素或者原地添加新的元素来修改数组,并以数组形式返回被修改的内容。此方法会改变原数组
const months = ['Jan', 'March', 'April', 'June'];
months.splice(1, 0, 'Feb');
// 在索引为1的地方开始插入Feb
console.log(months);
// 输出结果后的months数组: ["Jan", "Feb", "March", "April", "June"]

months.splice(4, 1, 'May');
/* 
在索引号为4的地方替换1个元素,
注意此时的数组已经经过上面的插入操作变成了["Jan", "Feb", "March", "April", "June"]
*/
console.log(months);
// 输出结果后的months数组: ["Jan", "Feb", "March", "April", "May"]

concat() 用于连接两个或多个数组 返回新数组
const array1 = ['a', 'b', 'c'];
const array2 = ['d', 'e', 'f'];
const array3 = array1.concat(array2);
console.log(array3);

/*
输出结果: Array ["a", "b", "c", "d", "e", "f"]
输出的是两个数组连接之后的结果,并没有改变array1和array2的原有数组
*/

sort()
对数组进行排序,返回的是排序后的数组。请注意,数组已原地排序,并且不进行复制。所以原有数组会发生变化

pop()方法从数组中删除最后一个元素,并返回该元素的值。此方法更改数组的长度。所以原有数组也会发生改变
const plants = ['broccoli', 'cauliflower', 'cabbage', 'kale', 'tomato'];
console.log(plants.pop());
// 输出结果为: "tomato"

console.log(plants);
// 此时的数组: ["broccoli", "cauliflower", "cabbage", "kale"]



发表于 2021-08-25 08:53:54 回复(0)
concat()连接两个或者更多的数组并返回结果。pop()删除并返回数组的最后一个元素。sort()是对数组进行排序,splice()删除元素并向数组中添加新元素。
发表于 2019-06-24 11:23:18 回复(0)
改变数据的方法有(共7种):
  1. splice
  2. pop
  3. push
  4. shift
  5. unshift
  6. sort
  7. reverse
发表于 2021-06-23 14:22:04 回复(0)
1. splice(): array.splice(index, how_many, item1...itemX)
// This method change original array. In addition, it used to add or delete items and then returns the removed items.

2. sort(): 25 is bigger than 100, since 2 > 1. 
// This method change original array.

3.pop(): used to remove the last item.
// shift() used to remove the first one.
// This method change original array.

4.concat(): used to join two or more arrays.
// It does not change the existing arrays, and just return the joined array.
发表于 2020-02-26 22:14:07 回复(2)
Concat 拼接数组并返回一个新的数组,不改变原数组
发表于 2020-10-12 22:26:41 回复(0)
splice对数组的增删改查,改变原来的数组。concat合并数组,返回的是合并后的数组,不改变原来数组。sort数组排序改变原数组,pop删除数组尾部的一个元素,改变原数组
发表于 2022-06-03 11:02:49 回复(0)
splice删除数据会改变原数组;sort排序会改变原数组;pop删除并返回数组的最后一个元素,会改变数组;concat连接数组,但是不改变原数组;
发表于 2021-06-05 18:30:53 回复(0)

Concat并不会改变自身数组


发表于 2019-09-26 09:11:14 回复(0)