方法名 | 对应版本 | 功能 | 原数组是否改变 |
---|---|---|---|
pop() | ES5- | 删除最后一位,并返回删除的数据 | y |
shift() | ES5- | 删除第一位,并返回删除的数据 | y |
unshift() | ES5- | 在第一位新增一或多个数据,返回长度 | y |
push() | ES5- | 在最后一位新增一或多个数据,返回长度 | y |
reverse() | ES5- | 反转数组,返回结果 | y |
sort() | ES5- | 排序(字符规则),返回结果 | y |
splice() | ES5- | 删除指定位置,并替换,返回删除的数据 | y |
toString() | ES5- | 直接转为字符串,并返回 | n |
valueOf() | ES5- | 返回数组对象的原始值 | n |
indexOf() | ES5 | 查询并返回数据的索引 | n |
lastIndexOf() | ES5 | 反向查询并返回数据的索引 | n |
forEach() | ES5 | 参数为回调函数,会遍历数组所有的项,回调函数接受三个参数, 分别为value,index,self;forEach没有返回值 |
n |
map() | ES5 | 同forEach,同时回调函数返回数据,组成新数组由map返回 | n |
filter() | ES5 | 同forEach,同时回调函数返回布尔值,为true的数据组成新数组由filter返回 | n |
every() | ES5 | 同forEach,同时回调函数返回布尔值,全部为true,由every返回true | n |
some() | ES5 | 同forEach,同时回调函数返回布尔值,只要由一个为true,由some返回true | n |
reduce() | ES5 | 归并,同forEach,迭代数组的所有项,并构建一个最终值,由reduce返回 | n |
reduceRight() | ES5 | 反向归并,同forEach,迭代数组的所有项,并构建一个最终值,由reduceRight返回 | n |
concat() | ES5- | 合并数组,并返回合并之后的数据 | n |
join() | ES5- | 使用分隔符,将数组转为字符串并返回 | n |
slice() | ES5- | 截取指定位置的数组,并返回 | n |
一.操作使原数组改变
1.数组的增
unshift(data1,data2...)
向数组的首位增加若干个元素,返回新的长度
var arr = [1,2,3]; var str = arr.unshift(0,0,0); console.log(str); //6(length)
console.log(arr); // [0, 0, 0, 1, 2, 3]
push(data1,data2...)
向数组的末位增加若干个元素,返回新的长度
var arr = [1,2,3]; var str = arr.push(6,6,6); console.log(str); //6(length)
console.log(arr); // [1, 2, 3, 6, 6, 6]
2.数组的删
shift()
删除并返回数组最前一个元素
var arr = [1,2,3]; console.log(arr.pop()); //1(元素) console.log(arr); //[2,3]
pop()
删除并返回数组最后一个元素
var arr = [1,2,3]; console.log(arr.pop()); //3(元素) console.log(arr); //[1,2]
3.数组的改
splice(start,n,data1,data2...)参数可选
删除数组中的元素,并添加新的元素
var arr = ["A","B","C","D","E"]; console.log(arr.splice(2,0,"a","b")); //[] console.log(arr); //["A", "B", "a", "b", "C", "D", "E"] 原数组改变
sort()
对数组中元素排序(字符方法),默认是升序
var arr = [4,2,3,5,1]; console.log(arr.sort()); //[1, 2, 3, 4, 5] console.log(arr); //[1, 2, 3, 4, 5] 原数组改变
reserve()
反转数组中元素的顺序
var arr = [1,2,3]; console.log(arr.reverse()); //[3,2,1] console.log(arr); //[3,2,1] 原数组改变
二.原数组不改变
1.slice(m,n)
从m位开始截取n位元素
当n省略或n=0时,选取元素直到最后一位;
m<0或n<0时,表示从最后一位开始算起
var arr = ["A","B","C","D","E"]; console.log(arr.slice(1,3)); //["B","C"] console.log(arr.slice(1)); //["B","C","D","E"] console.log(arr.slice(-4,-1)); //["B","C","D"] console.log(arr.slice(-2)); //["D","E"] console.log(arr.slice(1,-2)); //["B","C"] console.log(arr); //["A","B","C","D","E"]
2.toString()
将数组转化为字符
var arr=["夜","的","第","七","章"] ; var str=arr.toString(); console.log(str);
方法更新中...