标签:
二 Array
1.可以通过length属性删除或创建新的数组项
arr = [1,2,3]; arr.length = 4;//增加 [1,2,3,undefined] arr.length = 2;//删除 [1,2]
arr[6] = 6; // [1,2,3,undefined,undefined,6]
2.检测数组
Array.isArray()
3.转换方法
调用数组的toString()方法,返回由数组中每个值的字符串形式拼接而成的一个以逗号分隔的字符串。实际上,为了创建这个字符串,会调用数组每一项的toString()。
4.栈方法
栈是一种LIFO数据结构,数据插入和删除都发生在栈的顶部位置。
push(), 接受任意数量的参数,把他们逐个添加到数组的末尾,并返回新的数组长度(入栈)
pop(), 删除数组最后一个元素,并返回删除项的值(出栈)
5.队列方法
队列方法 是FIFO数据结构。
shift(), 删除数组第一项并返回该项的值(队列头部出)
push(), 从数组末尾插入若干项(队列尾部入)
或
unshift(), 从数组头部插入若干项,并返回新长度(队列头部入)
pop(), 删除数组最后一项 (队列尾部出)
6.重排序方法
reverse() 和 sort() 返回的是经过排序后的数组
7.操作方法
concat() 用于连接两个或多个数组。最终返回一个一维数组。它不会改变原有数组的值,返回的是副本
slice() 基于当前数组中的一个或多个项创建一个新数组。接受1或2个参数。第一个是返回项的起始位置,第二个为结束位置
splice() 强大的方法。可以做删除、插入、替换。接受3个参数。参数1,起始位置; 参数2,要删除的项目数; 参数3, 要插入的项。参数还可以传任意多个,之后的都作为要插入的项按顺序插入到数组中
8.位置方法
indexOf() ,lastIndexOf() 都接受1个参数,最多可接受2个。参数1,要查找的值; 参数2, 查找的起点位置的索引。从数组的下标0开始搜索。lastIndexOf() 从最后一个位置开始向前查找。返回查找的值在数组中的位置,找不到返回-1
9.迭代方法
每个方法都接收两个参数。参数1,在每一项上运行的函数;参数2, 运行该函数的作用域对象
every() 数组中每一项运行给定函数, 如果该函数对每一项都返回true,则该方法返回true
filter() 数组中每一项运行给定函数, 返回该函数会返回true的项组成的数组
forEach() 对数组的每一项运行给定的函数, 无返回值
map() 对数组的每一项运行给定的函数, 返回每次函数调用的结果组成的数组。
some() 对数组的每一项运行给定的函数, 如果该函数对任一项返回true, 则返回true
10.归并方法
reduce() ,reduceRight() 这两个方法都接收两个参数。参数1,数组每一项上调用的函数;参数2,可选,作为归并基础的初始值。传递给reduce(),reduceRight()的函数接受4个参数。前一个值、当前值、项的索引和数组对象。这个函数返回的任何值都会作为第一个参数自动传递给数组的下一项。
var values = [1,2,3,4,5]; var sum = values.reduce(function(prev, cur, index, array){ return prev + cur; }); alert(sum);//15
标签:
原文地址:http://www.cnblogs.com/mysic/p/5384153.html