2018-04-18数组详解

1. 数组  2. 日期   3. 事件

1.数组创建:

1. 字面量方式创建 var arr = [1,2,3]

2. 使用Array对象创建 var arr = new Array()

注: 参数是数组的长度(初始化长度),赋值超过长度时,长度会更改

属性:length(获取数组长度)

// 操作数组:添加,删除,修改,循环,查询

方法:

push()在数组的*末尾增加*一个或多个元素,并返回数组的新长度(unshift:从开头添加元素).

pop()删除数组的*最后一个*元素,并返回这个元素。

shift()*删除*数组的*第一个*元素,并返回这个元素。(注:一次只能删除一个)

splice()在*任意*的位置给数组*添加或删除*任意个元素。注: //删除时,第一参数是删除的起始索引值,第二个参数是删除数组元素个数;  // 添加时,第一个参数是添加的起始索引值,第二个参数是0表明不删除,第三个参数添加其他元素.

from()从类数组对象或者可迭代对象中*创建*一个新的数组实例。

of()根据一组参数来*创建*新的数组实例,支持任意的参数数量和类型。

find()*第一个*满足测试函数的元素并返回那个元素的值,如果找不到,则返回 undefined

findIndex()找到第一个满足测试函数的元素并返回那个元素的索引,如果找不到,则返回 -1。

isArray()用来*判断*某个变量是否是一个数组对象。

concat()*返回*一个由*当前*数组和其它若干个数组或者若干个非数组值组合而成的新数组。

join()连接 *所有*数组元素组成一个字符串

reverse()*颠倒*数组中元素的*排列顺序*,即原先的第一个变为最后一个,原先的最后一个变为第一个。

slice()*抽取当前*数组中的一段元素组合成一个新数组

sort()对数组元素进行*排序*,并返回当前数组。

filter()将*所有**过滤函数*中返回 true 的数组元素放进一个新数组中并返回。

forEach()为数组中的*每个*元素执行*一次*回调函数

every()如果数组中的*每个*元素满足测试函数,则返回 true,否则返回 false。

some()如果数组*中至少有一个*元素满足测试函数,则返回 true,否则返回 false。

以下几个和string类似:

indexOf()返回数组中*第一个*与指定值相等的元素的索引,如果找不到这样的元素,则返回 -1。

lastIndexOf()返回数组中*最后一个*(从右边数第一个)与指定值相等的元素的索引,如果找不到这样的元素,则返回 -1。

includes()判断当前数组是否包含某指定的值,如果是返回 true,否则返回 false。

entries()返回一个数组迭代器对象,该迭代器会包含所有数组元素的键值对

keys()返回一个数组迭代器对象,该迭代器会包含所有数组元素的

以下两个方法难理解:

map()返回一个由回调函数的返回值组成的新数组。映射

reduce()从左到右为每个数组元素执行一次回调函数,并把上次回调函数的返回值放在一个暂存器中传给下次回调函数,并返回最后一次回调函数的返回值。化简

你可能感兴趣的:(2018-04-18数组详解)