Array API
array.push() -- 将一个或多个新元素添加到数组结尾,返回数组新长度
array.unshift() -- 将一个或多个新元素添加到数组开始,返回数组新长度
array.splice(start, count, item1, ..., itemN) -- 删除从第一个数为起始、第二个参数为个数的这些元素后,在被截取掉的地方追加一个或多个从第三个参数开始的新元素,操作数组本身
array.pop() -- 移除最后一个元素并返回该元素值
array.shift() -- 移除最前一个元素并返回该元素值
array.slice(start, end) -- 返回第一个参数起始、第二个参数截至、左闭右开的数组,不操作数组本身
array.concat() -- 将两个数组进行合并,返回数据合并的结果,参数可为元素序列或数组,不操作数据本身
array.join() -- 将数组元素用参数中的符号连接起来,返回一个字符串
array.sort() -- 排序,可将排序方法以参数传入,如没有参数,按字符串正序排序的,操作数组本身
array.reverse() -- 逆序排序,操作数组本身
array.indexOf() -- 一个参数时,返回元素在数据中第一次出现的索引,比较时进行的是"==="的比较;两个参数时,第一个参数为起始位置,第二个参数为查询元素;
array.lastIndexOf() -- 类似indefOf,区别是从找到的是数组中最后一个出现的该元素的索引
array.every(function(item, index, array){}) -- 对数组的每一个元素进行函数的运行,如果函数返回的都是true,最后则返回true;如果有一个元素返回false,最后则返回false (注意,return false可终止循环)
array.some(function(item, index, array){}) -- 对数组的每一个元素进行函数的运行,如果函数有一个返回的是true,最后则返回true;如果都返回false,最后则返回false
array.filter(function(item, index, array){}) -- 对数组的每一个元素进行函数的运行,将函数返回值为false的过滤掉返回
array.forEach(function(item,index,array){}) -- 对数组的每一个元素进行函数的运行
array.map(function(item,index,array){}) -- 对数组的每一个元素进行函数的运行,把函数每次运行的结果按序组成的新数组返回
array.reduce(function(prev,cur,index,array){}) -- 调用一个函数,pre为上一次调用回调返回的值或者是提供的初始值,第二个参数为当前被处理的元素,第三个参数为当前位置,第四个参数为数组,依次将每次调用的结果替换掉数据中的元素,最后返回一个值
var arr = [0, 1 ,2 ,3 ,4 ,5 ,6 ,7 ,8 ,9]; // [0, 1 ,2 ,3 ,4 ,5 ,6 ,7 ,8 ,9]
arr.push(10, 11); // 返回12, [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11]
arr.unshift(-2, -1); // 返回14,[-2, -1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11]
arr.pop(); // 返回11,[-2, -1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
arr.pop(); // 返回10,[-2, -1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
arr.shift(); // 返回-2,[-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
arr.shift(); // 返回-1,[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
arr.slice(1, 3); // 返回[1, 2],[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
arr.splice(1, 2, 11, 12); // 返回[1, 2],[0, 11, 12, 3, 4, 5, 6, 7, 8, 9]
arr.splice(1, 2, 1, 2, 3); // 返回[11, 12],[0, 1, 2, 3, 3, 4, 5, 6, 7, 8, 9]
arr.splice(3, 1); // 返回[3],[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
arr.concat([-2, -1]); // 返回[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, -2, -1],[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
function sortFun(a, b) {
return a - b;
}
arr.sort(sortFun); // 返回[0, 1, 2, 3, 4, 5, 6, 7, 8, 9],[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
arr.reverse(); // 返回[0, 1, 2, 3, 4, 5, 6, 7, 8, 9],[9, 8, 7, 6, 5, 4, 3, 3, 2, 1, 0]
arr.reduce(function(prev, cur, index, array){return prev + cur;}); // 返回45
arr.reduce(function(prev, cur, index, array){return prev + cur;}, 1); // 返回46