数组的高级API
sort():按升序排列数组,即最小的值位于最前面,最大的值排在最后面。
存在问题:只能通过第一位排序,解决的方法:通过回调函数进行规则设置。(a-b:升序;b-a:降序)
slice():返回从原数组中指定开始下标到结束下标之间的项组成的新数组;
slice()方法可以接受一个或者两个参数,即要返回项的起始和结束位置。
在只有一个参数的情况下,slice()方法返回从该参数指定位置开始到当前数组末尾的所有项。
如果有两个参数,该方法返回起始位置和结束位置之间的项(但是不包括结束位置的项)。
splice():可以实现删除,插入和替换
删除:可以删除任意数量的项,只需指定两个参数:要删除的第一项的位置和要删除的项数;
插入:可以向指定位置插入任意数量的项,只需提供3个参数:起始位置,0(要删除的项数),要插入的项,
替换:可以向指定位置插入任意数量的项,同时删除任意数量的项,只需提供3个参数:起始位置,要删除的项数,要插入的任意数量的项,插入的项数不必与删除的项数相等。
常用来清空数组:arr.splice(0);
forEach():对数组进行遍历循环,对数组的每一项运行给定函数:
格式:arr.forEach(function(value,index){})
map():“映射”,对数组的每一项运行给定函数,返回每次函数调用的结果组成的数组;
filter():"过滤",数组中的每一项运行给定的函数,返回满足过滤条件组成的数组;
every():判断数组的每一项都是否满足条件,只有所有项都满足条件时,才会返回true;
some():判断数组中是否存在满足条件的项,只要有一项满足条件就会返回true,剩余的元素不会再执行检测
注意:some()不会对空数组进行检测,不会改变原始数组