1.数组方法
①join()
将数组中的左右元素都转换成字符串并连接在一起,返回最后生成的字符串。
②reverse() 改变原数组
将数组中的元素颠倒顺序,返回逆序的数组。在原先的数组中重新排列。
③sort() 改变原数组
将数组中的元素排序并返回排序后的数组,当不带参数调用时,数组元素以字母表顺序排序。可以用以下代码将排序按照数值排序:
var arr6_5 = [33,2,4,111]; console.log(arr6_5.sort(function(a,b){return a-b})) //输出: [2,4,33,111]
④concat() 不改变原数组
创建并返回一个新数组,它的元素包括调用concat()的原始数组的元素和concat()的每一个参数。
⑤slice() 不改变原数组
返回指定数组的一个片段或子数组。两个参数分别指定了片段的开始和结束的位置。(包含开始位置但不包含结束位置)。若只有一个参数则从该位置到末尾。负数代表从末尾处开始数。
⑥splice() 改变原数组
在数组中插入或删除元素的通用方法。前两个参数指定了需要删除的数组,紧随其后的任意个数的参数指定了需要插入到数组中的元素。
arr6_5_2 = [2, 4, 33, 111, 99, 66]; arr6_5_2.splice(2,0,"a","b","c"); //从下标为2的开始删除0位并插入"a","b","c" console.log(arr6_5_2); //=>[2, 4, "a", "b", "c", 33, 111, 99, 66]
⑦push()和pop() 改变原数组
push()方法在数组的尾部添加一个或多个元素,并返回数组的新长度。pop()在数组的尾部删除元素。
⑧unshift()和shift() 改变原数组
unshift()方法在数组的头部添加一个或多个元素,并返回数组的新长度。shift()在数组的头部删除元素。
⑨toString()和toLocalString()
2.ES5中的数组方法
①forEach()
循环遍历数组,可以配合es6的箭头函数使用。没有break语句,若想要提前终止,必须把forEach()方法放在一个try块中,并能抛出一个异常。
②map()
将调用的数组的每一个元素传递给指定的函数,并返回一个数组,它包含该函数的返回值。
arr6_5_2 = [2, 4, 33, 111, 99, 66]; var arr6_5_3 = arr6_5_2.map(function(x) {return 2*x}); //将数组内每个值*2 console.log(arr6_5_3); //=>[4, 8, 66, 222, 198, 132]
③filter()
返回调用的数组的一个子集。参数为函数,相当于一个过滤条件。
④every()和some()
是数组的逻辑判定:它们对数组元素应用指定的函数进行判定,返回true或false。
⑤reduce()和reduceRight()
使用指定的函数将数组元素进行组合,生成一个单个值。
⑥indexOf()和lastIndexOf()
搜索整个数组中具有给定值的元素,返回找到的第一个元素的索引或者如果没有找到就返回-1。
3.isArray
在es5中可以使用array.isArray()函数来判定它是否为数组。使用了Object.prototype.toString.call()方法。
4.类数组对象
是对象,有length属性并且是非负整数不超过2^32。可以间接的使用call方法调用数组方法。
Array.prototype.join.call(arr,‘+‘);......
原文地址:https://www.cnblogs.com/zhongxy/p/9139056.html