JS 学习笔记 (三) 数组

定义数组有两种方法:数组

1.构造函数Array()函数

    a. 若是构造函数无参数,则构造一个空数组测试

    b. 若是构造函数带有一个参数列表,则每一个参数指定一个元素的值,值的类型是任意的。数组的长度是参数列表中参数的个数this

    c.若是构造函数只有一个数值参数,则该数值默认为数组的长度,每一个元素的值预约义为undefined对象

2.数组直接量---初始化效率最高排序

    方法是在括号运算符中包含多个值列表,逗号分割。索引

 

使用注意事项:字符串

1.数组长度是弹性的。回调函数

2.数组下标从0开始,能够为表达式。io

3.数组长度必须小于2^32-1,不然,会自动将它转为一个字符串,从而生成与字符串关联的关联数组,即,把数组作为一个对象,数组下标作为对象属性的名字,不在是数组下标。

 

数组操做:

push() 给数组添加元素

pop()删除并返回数组最后一个元素

unshift() 在数组头部插入一个元素,能够包含多个参数,此时在数组头部一次性插入多个参数,顺序同参数顺序

shift() 将元素移出数组,并返回元素值,

concat()链接数组----返回新建立的数组

splice() 插入、删除或替换数组元素,第一个参数为操做的起始下标位置,第二个参数指定要删除元素的个数,第三个及后面的全部不肯定参数为将要插入的元素,无参数时不作操做,一个参数时删除指定下标开始的全部,返回值为被删除后的子数组;若是第一个参数为负值,从右往左定位,若是第二个参数为负,按0算。

slice() 截取数组,两个参数,分别为起始和结束的下标,返回截取后的数组;若是仅指定一个参数,截取从指定下标起、到结束的数组。参数为负数时,从右往左数。第一个参数大于数组长度时,不作操做,第二个参数大于数组长度时,按数组长度算。

sort() 排序

reverse() 倒序

toString() 数组转字符串,逗号分割

join() 将数组元素链接起来以构建一个字符串,参数为链接数组元素的字符串

 

 

迭代:

foreach:  语法:array.forEach(callbackfn[,thisArg])

              callbackfn:必须参数,最多能够接收三个参数的函数,对于数组中的每一个元素,forEach都会调用callbackfn一次。

              thisArg:callbackfn中可引用的this对象

         回调函数说明:function callbackfn(value,index,array)

                      value  数组元素值,index  数组元素的数字索引   array   包含该元素的数组对象

every:肯定数组的全部成员是否知足指定的测试,语法同foreach

 map:

filter:返回回调函数中知足指定条件的数组

reduce:对数组中全部元素调用指定回调,该回调函数的返回值为累积结果,而且在下一次调用该回调时作为参数传递。

reduceRight:同上,从右往左

相关文章
相关标签/搜索