Array.from将相似数组的对象和可遍历的对象转为真正的数组es6
var arr1 = Array.from(arrayLikeObj); //ES6 var arr2 = [ ].slice.call(arrayLikeObj): //ES5
Array.of将一组值转换为数组数组
Array.of(3,11,7) // [3,11,7]
copyWithin将指定位置的成员复制到其它位置(会覆盖原有成员),而后返回当前数组。
此方法会修改原数组。函数
Array.prototype.copyWithin(target, start = 0, end = this.length)
接受三个参数this
* target(必需):从该位置开始替换数据 * start(可选):从该位置开始读取数据,默认为0,若是是负值,表示倒数(右边第一位为-1) * end(可选):到该位置前中止读取数据,默认为数组长度,若是是负值,表示倒数
[1,2,3,4,5,6].copyWithin(0,2) // [3,4,5,6,5,6] [1, 2, 3, 4, 5].copyWithin(0, -2, -1) // [4, 2, 3, 4, 5]
查找成员编码
find方法用于找出第一个符合条件的数组成员。它的参数是一个回调函数,数组中的每个成员依次执行这个回调函数。
若是找到第一个符合条件的成员,返回该成员。若是没有符合条件的,则返回undefinedprototype
[1, 5, 10, 15].find(function(value, index, arr) { return value > 9; }) // 10
find方法的回调函数接受三个参数
value:当前值
index:当前位置
arr:原数组code
查找成员位置对象
[1, 5, 10, 15].findIndex(function(value, index, arr) { return value > 9; }) // 2
indexOf也能够返回成员位置,若是不存在,则返回-1,因此不少时候也用来判断成员是否存在排序
if (arr.indexOf(el) !== -1) { ... // el不存在数组中时执行 }
-判断成员是否存在ip
include方法判断某个给定值是否存在数组中,返回布尔值。
[1, 2, 3].includes(2); // true [1, 2, 3].includes(4); // false [1, 2, NaN].includes(NaN); // true
使用fill()给定值填充数组
接受三个参数
target(必需):用该数值填充数组
start(可选):从该位置开始填充,不接收负值
end(可选):到该位置前中止填充
['a', 'b', 'c'].fill(7, 1, 2) // ['a',7,'c']
键名遍历:keys( )
键值遍历:values( )
键值对遍历:entries( )
能够用for...of循环遍历
for (let index of ['a', 'b'].keys()) { console.log(index);} // 0 // 1 for (let elem of ['a', 'b'].values()) { console.log(elem);} // 'a' // 'b' for (let [index, elem] of ['a', 'b'].entries()) { console.log(index, elem);} // 0 "a" // 1 "b"
concat()链接两个或更多的数组,并返回结果。
arr1.concat(arr2)
ES6中可利用扩展运算符直接写成 [ ...arr1,...arr2]
join()把数组的全部元素放入一个字符串。元素经过指定的分隔符进行分隔。
pop()删除并返回数组的最后一个元素
push()向数组的末尾添加一个或更多元素,并返回新的长度。
reverse()颠倒数组中元素的顺序。
shift()删除并返回数组的第一个元素
slice()
从某个已有的数组返回选定的元素(返回一个新数组)
arr.slice(start,end) start 必需。规定从何处开始选取。若是是负数,那么它规定从数组尾部开始算起的位置。也就是说,-1 指最后一个元素,-2 指倒数第二个元素,以此类推。 end 可选。规定从何处结束选取。该参数是数组片段结束处的数组下标。若是没有指定该参数,那么切分的数组包含从 start 到数组结束的全部元素。若是这个参数是负数,那么它规定的是从数组尾部开始算起的元素。
sort()
对数组的元素进行排序(按照字符编码的顺序)
若是要按照数值大小对数字排序,必须使用一个排序函数arr.sort(sortNumber)
splice()删除元素,并向数组添加新元素。会改变原数组
arr.splice(index,howmany,item1,.....,itemX) index 必需。整数,规定添加/删除项目的位置,使用负数可从数组结尾处规定位置。 howmany 必需。要删除的项目数量。若是设置为 0,则不会删除项目。 item1, ..., itemX 可选。向数组添加的新项目。
toSource()返回该对象的源代码。
toString()把数组转换为字符串,并返回结果。
toLocaleString()把数组转换为本地数组,并返回结果。
unshift()向数组的开头添加一个或更多元素,并返回新的长度。
valueOf()返回数组对象的原始值
参考阮一峰《ECMAScript 6 入门》:http://es6.ruanyifeng.com/#do...