var array = [1,2,3,4,5]
//末尾添加
array.push(6)
//获取最后一个元素,并在数组内删除该元素/item
let lastItem = array.pop()
//获取数组第一个元素,并在数组内删除该元素/item
let firstItem = array.shift()
//在数组第一个元素之前插入一个元素/item
array.unshift(0)
//反转
array.reverse()
//数组合并
var array1 = [xxx1,xxx2]
var array2 = [yyy1,yyy2]
要用
array1 = array1.concat(array2)
不要用
array1 += array2;这样写虽然能加进来,但如果内容时对象时,无法获取对象属性。
splice (在指定位置)添加/删除元素(item)
splice(location, length, inserValue1, inserValue2, ...)
location:操作的起始位置, 必须
length:删除的item数量,必需。如果设置为 0,则不会删除item。
inserValue1, inserValue2...:向数组添加的新item
删除元素
let a = [1, 2, 3, 4, 5, 6, 7];
let item = a.splice(0, 3); // [1,2,3]
console.log(a); // [4,5,6,7]
// 从数组下标0开始,删除3个元素
let item = a.splice(-1, 3); // [7]
// 从最后一个元素开始删除3个元素,因为最后一个元素,所以只删除了7
删除并添加
let a = [1, 2, 3, 4, 5, 6, 7];
let item = a.splice(0,3,'添加'); // [1,2,3]
console.log(a); // ['添加',4,5,6,7]
// 从数组下标0开始,删除3个元素,并添加元素'添加'
let b = [1, 2, 3, 4, 5, 6, 7];
let item = b.splice(-2,3,'添加1','添加2'); // [6,7]
console.log(b); // [1,2,3,4,5,'添加1','添加2']
// 从数组最后第二个元素开始,删除3个元素,并添加两个元素'添加1'、'添加2'
不删除只添加:
let a = [1, 2, 3, 4, 5, 6, 7];
let item = a.splice(0,0,'添加1','添加2'); // [] 没有删除元素,返回空数组
console.log(a); // ['添加1','添加2',1,2,3,4,5,6,7]
let b = [1, 2, 3, 4, 5, 6, 7];
let item = b.splice(-1,0,'添加1','添加2'); // [] 没有删除元素,返回空数组
console.log(b); // [1,2,3,4,5,6,'添加1','添加2',7] 在最后一个元素的前面添加两个元素
sort
var array = [10, 1, 3, 4,20,4,25,8];
// 升序 a-b < 0 a将排到b的前面,按照a的大小来排序的
// 比如被减数a是10,减数是20 10-20 < 0 被减数a(10)在减数b(20)前面
array.sort(function(a,b){
return a-b;
});
console.log(array); // [1,3,4,4,8,10,20,25];
// 降序 被减数和减数调换了 20-10>0 被减数b(20)在减数a(10)的前面
array.sort(function(a,b){
return b-a;
});
console.log(array); // [25,20,10,8,4,4,3,1];
网友评论