js数组常用方法
添加(返回新的数组长度)
末尾添加 arr.push(els)
开头添加 arr.unshift(els)
删除(返回被删除元素)
末尾删除 arr.pop(els)
开头删除 arr.shift(els)
重新排序(返回经过排序后的数组)
倒序大到小 arr.reverse()
正序小到大 字符串比较 arr.sort(function)
function说明 比较函数接收两个参数,如果第一个参数应该位于第二个参数之前则返回一个负数,如果两个参数相等则返回0,如果第一个参数应该位于第二个参数之后则返回一个正数
数组合并(返回新的数组)
arr.concat(arr1,arr2); 解释 arr1,arr2 会插入在arr末尾
数组截取(返回被截取数组,不影响原数组)
arr.slice(num1,num2); 解释:一个参数,从参数位置到结束(0为开始),两个参数第一个为开始位置,第二个为结束位置
神奇的splice(num1,num2) num1表示起始位置,num2表示删除数目
删除: arr.splice(0,2) 表示从零开始,删除两个数组元素 返回为被删除的元素
插入:arr.splice(0,0,arr1,arr2) 表示在最开头的位置插入arr1和arr2
替换:arr.splice(1,1,arr1);把位置1的元素换成arr1
查找元素(找到返回元素 找不到返回-1)
arr.indexOf(num1,num2)从头开始找 num1要查找的项 num2(可选)表示查找起点位置的索引
arr.lastIndexOf(num1,num2) 从末尾往头开始找
数组迭代方法(传入方法的函数都会接收3个参数:数组项的值,该项在数组中的位置,数组本身)
every() 对数组中每一项运行给定函数,如果该函数每一项都返回true,则返回true
some() 对数组中每一项运行给定函数,如果该函数任意一项返回true,则返回true
filter() 对数组中每一项运行给定函数,返回该函数会返回true的项组成的数组
map() 对数组中每一项运行给定函数,返回每次函数调用的结果组成的数组
forEach() 对数组中每一项运行给定函数,该方法没有返回值
总结:
pop:删除最后一个并返回,改变原数组
push:向数组末尾添加元素,并返回新的长度,改变原数组
unshift:向数组开头添加元素,并返回新的长度,改变原数组
reverse:颠倒数组顺序,改变原数组
shift:将第一个元素删除并且返回,空即为undefined,改变原数组
splice:splice(start,length,item)新增删除替换数组元素,返回被删除数组,无删除则不返回,改变原数组
sort:对数组排序,改变原数组
不改变原数组的:
concat:连接多个数组,返回新的数组,不改变原数组
join:将数组中所有元素以参数作为分隔符放入一个字符串,不改变原数组
slice:slice(start,end),返回选定元素,不改变原数组