今天igeek手册与大家分享的是:JS数组常用方法操作,希望大家看完能有所收获哦~
在数组末尾添加一项,并返回数组的长度, 可以添加任意类型的值作为数组的一项。
- var arr = [1,2];
- arr.push(6) // arr: [1,2,6]
- arr.push('aa') // arr: [1,2,6,"aa"]
- arr.push(undefined) // arr: [1,2,6,"aa",undefined]
- arr.push({a: "A", b: "B"}) // [1,2,6,"aa",undefined,{a: "A", b: "B"}]
- var arr = [1,2];
- arr.unshift(9) // [9, 1, 2]
- arr.unshift('aa') // ['aa',9, 1, 2]
删除最后一项,并返回删除元素的值;如果数组为空则返回undefine。对数组本身操作
- var arr = [1,2,3,4,5];
- arr.pop() // arr: [1, 2, 3, 4]
- arr.pop() // arr: [1, 2, 3]
- var arr = [1,2,3,4,5];
- arr.shift() // [2, 3, 4, 5]
- arr.shift() // [3, 4, 5]
不改变原始数组,得到新的数组
- slice(start,end)
- var arr = [1,2,3,4,5];
- var a = arr.slice(1) // a: [2,3,4,5]
- var a = arr.slice(1,3) // a: [2,3]
- var a = arr.slice(3,4) // a: [5]
改变原数组,可以实现shift前删除,pop后删除,unshift前增加,同push后增加一样的效果。索引从0开始
- splice(index, howmany, item1, ....., itemX)
- var arr = [1, 2, 3, 4, 5];
- push: arr.splice(arr.length, 0, 6) // [1, 2, 3, 4, 5, 6]
- unshift: arr.splice(0, 0, 6) // [6, 1, 2, 3, 4, 5]
- pop: arr.splice(arr.length - 1, 1) // [1, 2, 3, 4]
- shift: arr.splice(0, 1) // [2, 3, 4, 5]
- arr.splice(1) // [1]
- arr.splice(1, 2) // [1, 4, 5]
- arr.splice(1, 0, 'A') // [1, "A",2,3, 4, 5]
- arr.splice(1, 2, 'A', 'B') // [1, "A", "B", 4, 5]
合并后得到新数组,原始数组不改变
- var arr1 = [1,2];
- var arr2 = [3,4,5];
- var arr = arr1.concat(arr2) // [1,2,3,4,5]
并返回元素索引,不存在返回-1,索引从0开始
- var arr = ['a','b','c','d','e'];
- arr.indexOf('a'); //0
- arr.indexOf(a); //-1
- arr.indexOf('f'); //-1
- arr.indexOf('e'); //4
- var a, b;
- a = [0, 1, 2, 3, 4];
- b = a.join("-"); // 0-1-2-3-4
并返回翻转后的原数组,原数组翻转了
- var a = [1,2,3,4,5];
- a.reverse()//a:[5, 4, 3, 2, 1] 返回[5, 4, 3, 2, 1]
今天igeek手册的分享就到这里啦,这里是igeekbar,我是iGeekBar的极客杀手~大家有啥问题,意见!欢迎留言勾搭我哦~~
来源: http://igeekbar.com/igeekbar/post/632.htm