2015-09-17 |

js- 数组笔记分享(超实用)

javascript - 数组学习笔记分享(超实用)

常用的js数组操作方法及原理

1、声明数组的方式

JavaScript - 数组学习笔记分享(超实用)

其中,在声明数组的时候,去掉new操作符,也可以。

还有一种初始化数组的方式,使用数组字面量表示法 。

数组字面量由一对包含数组项的方括号表示,多个数组项之间用逗号隔开。

JavaScript - 数组学习笔记分享(超实用)

2、数组的length , 不是只读的,可以用它来增删数组。

JavaScript - 数组学习笔记分享(超实用)

增加数组项

JavaScript - 数组学习笔记分享(超实用)

3、检测数组

如果只有一个全局的环境,可以用

JavaScript - 数组学习笔记分享(超实用)

但如果一个网页中有框架,就会有多个全局环境,那么Array构造函数就会有多个,此时用

Array.isArray(value);//IE9+

4、转换方法(将数组转化为字符串)

所有对象都有toLocalString()、toString()、这2个方法返回以逗号分隔的字符串,它们的原理分别是循环数组,将数组的每一项分别使用toLocalString()、toString()方法后,拼接成字符串。

join()方法是可以指定分隔的符号来返回字符串。如果在join()中不指定分隔符,默认为逗号。

如果数组中的一项值是null,或者undefined,使用join(),toLocalString()、toString()方法返回的是以空字符串表示该项。

valueOf()返回的还是数组

5、向数组中添加或取出值(栈方法,队列方法)

JavaScript - 数组学习笔记分享(超实用)

这2个方法都是像栈一样的形式,直接操作最后的元素,也就是后来的元素。

还有2种方法像队列一样的形式操作数组,shift,unshift

JavaScript - 数组学习笔记分享(超实用)

取值操作pop(),shift(),会返回一个值

push(),unshift(),会返回添加以后的数组长度。

6、排序方法

JavaScript - 数组学习笔记分享(超实用)

sort();方法会对数组的每一项进行toString()。所以最后得到的数组每一项字符串。所以会出现那样的结果。

但sort()接收一个比较方法的函数作为参数,那我们可以自定义一个compare函数

JavaScript - 数组学习笔记分享(超实用)

7、操作方法(concat,slice,splice)

这里concat和slice方法都不会直接操作原数组,而是返回一个新的数组,原数组不会改变。

JavaScript - 数组学习笔记分享(超实用)

slice很像python切割字符串。

JavaScript - 数组学习笔记分享(超实用)

slice()如果传入一个负值,则用数组长度加上这个值,对应的就是等价的值

JavaScript - 数组学习笔记分享(超实用)

splice(‘起始位置’, ‘删除数量'[, ‘代替值’]);它是直接操作原数组,以数组形式返回被操作的元素

JavaScript - 数组学习笔记分享(超实用)

8、位置方法(indexOf, lastIndexOf)

indexOf(‘要查找的项'[, ‘查找起点的索引’])返回数组值的索引,从第一个值开始查找、lastIndexOf则相反。

JavaScript - 数组学习笔记分享(超实用)

来源-前端观察


发表评论

    评价:
    验证码: 点击我更换图片