【js】基础API的 Array总结

Array的方法:

Array.from() 从一个类数组或可迭代对象创建一个新的,浅拷贝实例 (字符串可以变成数组)

Array.from('acf',function(val,index,Array){console.log(val,index,Array)})
返回: ["a", c","f"]
a 0 undefined
c 1 undefined
f 2 undefined

如果是[1, 2] 直接返回数组本身[1, 2]

Array.isArray() 确定传入的值是否是一个Array 返回值 true(是数组) 或者 false

Array.of() 创建一个具有可变参数的新数组实例,而不用考虑参数的数量或类型; 可以理解创建空的数组
Array() 创建空的数组,可以指定长度,

Array.prototype.concat() 合并两个或多个数组 返回新数组但不会修改原数组
示例:
a = [1,2,3] b = [13,12] a.concat(b)

Array.prototype.every() 接收一个(数组内)的( 所有元素) 是否都能通过某个指定的( 函数 )的 测试 符合返回true,否则false

Array.prototype.filter() 创建一个新数组,其中包含已通过所提供函数实现的测试的所有元素,如果没有通过的元素返回一个空[]

Array.prototype.find() 返回数组中满足提供的函数测试的第一个元素的值,否则是undefined

Array.prototype.findIndex() 返回数组中满足提供的函数测试的第一个元素的索引,否则是-1

Array.prototype.flat() 会按照一个可指定的深度递归遍历数组,并将所有元素与遍历到的子数组的元素合并为一个新数组返回

var newArray = arr.flat([depth]) depth == 1或者 Infinity 代表遍历几层

Array.prototype.forEach()对数组的每个元素执行一次提供的函数。

Array.prototype.indexOf()方法返回在数组中可以找到一个给定元素的第一个索引,如果不存在,则返回-1。

Array.prototype.lastIndexOf() 返回指定的元素在数组中的最后一个的索引,不存在返回-1, 从数组的后面向前查找,从 fromIndex(从此位置开始逆向查找) 处开始。

Array.prototype.includes()方法用来判断一个数组是否包含一个指定的值,根据情况,如果包含则返回 true,否则返回false。

Array.prototype.join()方法将一个数组(或一个类数组对象)的所有元素连接成一个字符串并返回这个字符串

Array.prototype.map() 创建一个新数组,其结果是该数组中的每个元素都调用一个提供的函数后返回的结果

Array.prototype.pop()方法从数组中删除最后一个元素,并返回该元素的值。此方法更改数组的长度。

Array.prototype.push()方法将一个或多个元素添加到数组的末尾,并返回该数组的新长度。

Array.prototype.reverse()方法将数组中元素的位置颠倒,并返回该数组。数组的第一个元素会变成最后一个,数组的最后一个元素变成第一个。该方法会改变原数组。

Array.prototype.shift()方法从数组中删除第一个元素,并返回该元素的值。此方法更改数组的长度。

Array.prototype.unshift()方法从数组开头添加第一个元素,并返回该元素的值。此方法更改数组的长度。

Array.prototype.slice() 方法返回一个新的数组对象,这一对象是一个由 begin 和 end 决定的原数组的浅拷贝(包括 begin,不包括end)

Array.prototype.some() 方法测试数组中是不是至少有1个元素通过了被提供的函数测试。它返回的是一个Boolean类型的值。

Array.prototype.sort()方法用原地算法对数组的元素进行排序,并返回数组。默认排序顺序是在将元素转换为字符串,然后比较它们的UTF-16代码单元值序列时构建的

Array.prototype.splice()方法通过删除或替换现有元素或者原地添加新的元素来修改数组,并以数组形式返回被修改的内容。此方法会改变原数组

Array.prototype.toLocaleString() 返回一个字符串表示数组中的元素。数组中的元素将使用各自的 toLocaleString 方法转成字符串,这些字符串将使用一个特定语言环境的字符串(例如一个逗号 ",")隔开

Array.prototype.toString()返回一个字符串,表示指定的数组及其元素

/*不常用的*/
Array.prototype.copyWithin() 浅复制数组的一部分到同一数组中的另一个位置,并返回它,不会改变原数组的长度。
Array.prototype.entries() 方法返回一个新的Array Iterator对象,该对象包含数组中每个索引的键/值对。新的Array Iterator对象..next().value
Array.prototype.fill() 用一个固定值填充一个数组中从起始索引到终止索引内的全部元素
Array.prototype.flatMap()方法首先使用映射函数映射每个元素,然后将结果压缩成一个新数组。

Array.prototype.values() 方法返回一个新的 Array Iterator 对象,该对象包含数组每个索引的值
Array.prototype.keys()方法返回一个包含数组中每个索引键的Array Iterator对象。
const array1 = ['a', 'b', 'c'];
const iterator = array1.keys();

for (const key of iterator) {
console.log(key);

Array.prototype.reduce() 方法对数组中的每个元素执行一个由您提供的reducer函数(升序执行),将其结果汇总为单个返回值
Array.prototype.reduceRight()方法接受一个函数作为累加器(accumulator)和数组的每个值(从右到左)将其减少为单个值。



posted @ 2019-12-19 10:52  阳光透过幸福  阅读(198)  评论(0编辑  收藏  举报