javascript数组方法
-
给数组增加元素
(1)
array.push(element1,...,elementN)
用途:push方法在原来的数组末尾添加一个或者多个元素;
返回值是:新数组的长度;(2)
array.unshift(element1,...,elementN)
用途: unshift方法在原来数组的开头添加元素
返回值是: 新数组的长度 -
删除数组的某些元素
(1)array.pop()
用途是: 从尾部删除数组的最后一个元素
返回值是: 数组被删除掉的元素
(2)array.shift()
用途是: 从头部删除数组的第一个元素
返回值是: 数组被删除掉的元素(3)splice方法:通过指定下标删除数组中的元素和添加新元素来更改数组的内容
arr.splice(start,deleteCount,item1...)
用法:
start指定修改的开始位置
deleteCount(可选)指定要移除的数组元素的个数,如果是0,则不移除元素,如果不填则表示把start即之后的所有元素都删除
item1...表示从start位置开始添加元素
返回值:由被删除的元素组成的数组,如果没有删除则返回空数组
注意:该方法会直接修改原数组 -
判断是否为数组
Array.isArray(obj)
如果obj是数组,返回true;否则返回false
-
合并数组
var newArray = oldArray.concat(arr1,arr2,...)
注意:不会修改原来的数组
-
真值检测方法:
(1) every方法arr.every(callback)
用途:判断数组中的每个元素是否符合条件,如果符合条件则返回true,如果数组中有一个元素不符合条件则返回false;
callback: callback传入三个参数,分别是:元素值,元素的索引,原数组
该方法不会改变原数组(2)includes方法
arr.includes(searchElement, fromIndex)
解释 searchElement为必填项,是要查找的元素值,fromIndex是选填项,是指从该索引来进行查找。
返回值 如果查找到该元素则返回true,否则返回false
(3)some方法arr.some(callback)
用法:该方法为数组中的项执行callback,直到找到一个满足条件的即返回 true,否则返回false
some 被调用时不会改变数组。 -
fill方法,修改数组
arr.fill(value,start,end)
用途:fill方法通过传入三个参数,value是修改的值,start和end是数组的下标
返回结果:返回修改后的数组
这个方法会修改原数组 -
filter方法:筛选原数组中的合适的元素并返回新的数组
var new_ARR = arr.filter(callback(element,index,array))
用途:通过callback函数来得到符合条件的数组并返回
该方法不会修改原来的数组 -
forEach方法:对数组中的每一项元素执行回调函数
array.forEach(callback(currentValue,index,array))
用途:forEach方法对数组中的每一项进行遍历操作
返回值 undefined -
查找数组索引
(1) indexOf():返回数组中找到指定元素的索引,如果不存在返回-1arr.indexOf(searchElement,fromIndex)
**说明**: fromIndex如果不传,默认值是0;indexOf方法是从数组的前面往后进行查找的
(2) lastIndexOf(): 从数组的后面向前查找,如果找到则返回数组的下标,否则返回-1;
arr.lastIndexOf(searchElement,fromIndex)
-
数组转化为字符串的方法
(1) join: 将一个数组的所有元素连接成一个字符串并返回str = arr.join()//默认为, str = arr.join("")//分隔符为"" str = arr.join(separator)//分隔符
**描述**: 将所有的数组元素转化为字符串,再用一个分隔符把这些字符串连接起来,如果元素是undefined或者null,则转化成空字符串。 **注意**: join 方法不会改变原来的数组
- slice方法:返回一个从开始到结束(不包括结束)选择的数组的一部分浅拷贝到一个新数组对象。且原始数组不会被修改
-
高阶方法:
(1) mapvar newArr = arr.map(callback(currentValue,index,array))
用法: 对数组中的每一个元素调用callback,然后返回一个新的数组
(2) reduce:对累加器和数组中的每一个元素从左到右应用一个函数,将其减少为单个值arr.reduce(callback,initalValue)
用法:callback函数中有四个参数,
accumulator是累加上一次调用回调时返回的累加值
currentValue:数组中正在处理的元素
currentIndex:数组中正在处理的当前元素的索引(可选)
array: 调用reduce的数组
initalValue:用作第一个调用 callback的第一个参数的值。 如果没有提供初始值,则将使用数组中的第一个元素
返回值:函数累计处理的结果
注意:该函数不会改变原来的数组
(3)reduceRight: 从右向左进行累加,其他和reduce一样
(4)sort: 对数组的元素进行排序arr.sort(compareFun)
用法:通过compareFun来指定数组按照某种顺序进行排序,如果没有传递该函数,则数组中的每个元素转化为字符串,并按照字符的Unicode来排序。
返回值:排序后的数组
注意:原数组已经修改
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。