细说 Javascript 数组篇(二) : 数组的构造函数和常见操做

数组的构造函数

因为数组的构造函数在处理参数时的不肯定性,所以强烈建议使用 [] 符号来建立一个新数组。git

[1, 2, 3]; // Result: [1, 2, 3]
new Array(1, 2, 3); // Result: [1, 2, 3]

[3]; // Result: [3]
new Array(3); // Result: []
new Array('3') // Result: ['3']

当只有一个参数被传递到数组的构造函数中,而且这个参数仍是一个数字时,构造函数将会返回一个元素值为 undefined 的数组,并且这个数组的 length 属性被设置为传入构造函数的数字参数。但实际上上新数组的索引并无被初始化。github

请输入图片描述

这种用法只有在不多数状况下会被使用,好比循环字符串时,这种用法能够避免使用一个循环。segmentfault

new Array(count + 1).join(stringToRepeat);

总结

综上所述,咱们应该尽可能使用 [] 来建立新函数,而不是数组的构造函数,这样代码将有更好的可读性。数组


数据常见操做

由于这篇博文的原文比较短,因此我打算把一些经常使用的数组操做方法也总结一下:ide

添加元素

1.push - 将一个或多个新元素添加到数组结尾,并返回数组新长度。函数

请输入图片描述

2.unshift - 将一个或多个新元素添加到数组开始,数组中的元素自动后移,返回数组新长度。spa

请输入图片描述

3.splice - 将一个或多个新元素插入到数组的指定位置,插入位置的元素自动后移,返回 []code

请输入图片描述

删除元素

1.pop - 移除最后一个元素并返回该元素值。排序

请输入图片描述

2.shift - 移除最前一个元素并返回该元素值,数组中元素自动前移。索引

请输入图片描述

3.splice - 删除从指定位置 deletePos 开始的指定数量 deleteCount 的元素,数组形式返回所移除的元素。(注意与添加元素时参数的差别)

请输入图片描述

其余操做

1.join - 返回字符串,这个字符串将数组的每个元素值链接在一块儿,中间用 separator 参数隔开。

请输入图片描述

2.slice - 方法用于返回数组中一个片断或子数组,若是只写一个参数返回参数到数组结束部分,若是参数出现负数,则从数组尾部计数,若是 start 大于 end 返回空数组,slice 不会改变原数组,而是返回一个新的数组。

请输入图片描述

3.concat - 将多个数组(也能够是字符串,或者是数组和字符串的混合)链接为一个数组,返回链接好的新的数组。

请输入图片描述

4.reverse - 反转元素(最前的排到最后、最后的排到最前),返回修改后的数组。

请输入图片描述

5.sort - 对数组元素排序,返回修改后的数组。当没有参数的时候会按字母表升序排序,也能够能够传一个排序方法进去。

请输入图片描述

参考:

http://bonsaiden.github.io/JavaScript-Garden/#array.constructor

相关文章
相关标签/搜索