1.push
在原数组末尾添加元素,返回数组长度
var a=[1,2,3,4,5,6,7,8]
var b=a.push(10,9)
console.log(a)//(8) [1, 2, 3, 4, 5, 6, 7, 8]
console.log(b)// 10
2.concat
在原数组末尾添加元素,返回新数组,原数组不变
var c=a.concat(5,4)
console.log(a) //(8) [1, 2, 3, 4, 5, 6, 7, 8]
console.log(c) //(10) [1, 2, 3, 4, 5, 6, 7, 8, 5, 4]
3.slice
从索引位置开始截取数组(包左不包右)并生成一个新数组,原数组不变
a.如果参数为空,则截取整个数组
b.如果参数超过数组长度,则截取到数组末尾
c.如果第一个参数为负数,则返回空数组
var b=a.slice(3,6)
console.log(a)//(8) [1, 2, 3, 4, 5, 6, 7, 8]
console.log(b)//(3) [4, 5, 6]
d.如果第二个参数为负数,则截取到数组长度减去参数值
var b=a.slice(2,-2)
console.log(a)//(8) [1, 2, 3, 4, 5, 6, 7, 8]
console.log(b)//(4) [3, 4, 5, 6]]
e.两个参数都为负数时(第二个参数大于第一个),从后往前截取数组
var b=a.slice(-3,-1)
console.log(a)//(8) [1, 2, 3, 4, 5, 6, 7, 8]
console.log(b)//(2) [8, 9]
f.两个参数都为负数(第二个参数小于第一个),返回空数组
总结:两个参数同时为正或负,第一个参数大于第二个参数时,返回空数组;前负后正时返回也是空数组
4.join
使数组中元素以字符串形式输出,默认以逗号分开,生成新数组
var a=[1,2,3,4,5,6,7,8,9,10]
var b=a.join("'")
console.log(a)//(10) [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
console.log(b)//1'2'3'4'5'6'7'8'9'10
5.shift
删除数组中第一项,并返回第一项的值,如果数组为空,返回undefined
var a=[1,2,3,4,5,6,7,8,9,10]
// var b=a.push(10,9)
var b=a.shift()
console.log(a)//(9) [2, 3, 4, 5, 6, 7, 8, 9, 10]
console.log(b)//1