Javascript学习笔记之数组的构造函数


Posted in Javascript onNovember 23, 2014

数组的构造函数

由于数组的构造函数在处理参数时的不确定性,因此强烈建议使用 [] 符号来创建一个新数组。

[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 属性被设置为传入构造函数的数字参数。但实际上上新数组的索引并没有被初始化。

Javascript学习笔记之数组的构造函数

这种用法只有在很少数情况下会被使用,比如循环字符串时,这种用法可以避免使用一个循环。

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

总结

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

数据常见操作

因为这篇博文的原文比较短,所以我打算把一些常用的数组操作方法也总结一下:

添加元素

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

Javascript学习笔记之数组的构造函数

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

Javascript学习笔记之数组的构造函数

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

Javascript学习笔记之数组的构造函数

删除元素

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

Javascript学习笔记之数组的构造函数

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

Javascript学习笔记之数组的构造函数

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

Javascript学习笔记之数组的构造函数

其他操作

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

Javascript学习笔记之数组的构造函数

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

Javascript学习笔记之数组的构造函数

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

Javascript学习笔记之数组的构造函数

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

Javascript学习笔记之数组的构造函数

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

Javascript学习笔记之数组的构造函数

Javascript 相关文章推荐
JavaScript中的History历史对象
Jan 16 Javascript
JavaScript 应用类库代码
Jun 02 Javascript
一个JavaScript函数把URL参数解析成Json对象
Sep 24 Javascript
Jquery焦点图实例代码
Nov 25 Javascript
JS实现超简单的仿QQ折叠菜单效果
Sep 21 Javascript
javascript 开发之百度地图使用到的js函数整理
May 19 Javascript
BootStrap Table复选框默认选中功能的实现代码(从数据库获取到对应的状态进行判断是否为选中状态)
Jul 11 Javascript
Layui给数据表格动态添加一行并跳转到添加行所在页的方法
Aug 20 Javascript
ES6入门教程之变量的解构赋值详解
Apr 13 Javascript
js之切换全屏和退出全屏实现代码实例
Sep 09 Javascript
layui 富文本赋值,取值,取纯文本值的实例
Sep 18 Javascript
Vue和React有哪些区别
Sep 12 Javascript
Javascript学习笔记之数组的遍历和 length 属性
Nov 23 #Javascript
Javascript 赋值机制详解
Nov 23 #Javascript
Javascript学习笔记之函数篇(六) : 作用域与命名空间
Nov 23 #Javascript
Javascript学习笔记之函数篇(五) : 构造函数
Nov 23 #Javascript
Javascript学习笔记之函数篇(四):arguments 对象
Nov 23 #Javascript
Javascript学习笔记之 函数篇(三) : 闭包和引用
Nov 23 #Javascript
js实例属性和原型属性示例详解
Nov 23 #Javascript
You might like
Body是什么,该怎么喝出咖啡里的口感
2021/03/03 咖啡文化
如何正确理解PHP的错误信息
2006/10/09 PHP
php设计模式之命令模式的应用详解
2013/05/21 PHP
PHP实现格式化文件数据大小显示的方法
2015/01/03 PHP
CI框架中$this->load->library()用法分析
2016/05/18 PHP
PHP关键特性之命名空间实例详解
2017/05/06 PHP
javascript 二维数组的实现与应用
2010/03/16 Javascript
多个js与css文件的合并方法详细说明
2012/12/26 Javascript
JQuery教学之性能优化
2014/05/14 Javascript
json属性名为什么要双引号(个人猜测)
2014/07/31 Javascript
js实现图片漂浮效果的方法
2015/03/02 Javascript
原生js结合html5制作简易的双色子游戏
2015/03/30 Javascript
javascript操作ul中li的方法
2015/05/14 Javascript
基于JavaScript实现移动端点击图片查看大图点击大图隐藏
2015/11/04 Javascript
jQuery操作属性和样式详解
2016/04/13 Javascript
node thread.sleep实现示例
2018/06/20 Javascript
Bootstrap Table中的多选框删除功能
2018/07/15 Javascript
如何将百度地图包装成Vue的组件的方法步骤
2019/02/12 Javascript
nodejs nedb 封装库与使用方法示例
2020/02/06 NodeJs
python文件的md5加密方法
2016/04/06 Python
Python脚本实现Web漏洞扫描工具
2016/10/25 Python
Django如何实现内容缓存示例详解
2017/09/24 Python
python导出hive数据表的schema实例代码
2018/01/22 Python
通过Python 接口使用OpenCV的方法
2018/04/02 Python
python2与python3的print及字符串格式化小结
2018/11/30 Python
python3实现猜数字游戏
2020/12/07 Python
Pycharm远程调试原理及具体配置详解
2019/08/08 Python
Django框架 查询Extra功能实现解析
2019/09/04 Python
python中的逆序遍历实例
2019/12/25 Python
医院实习介绍信
2014/01/12 职场文书
党校党性分析材料
2014/12/19 职场文书
先进个人材料怎么写
2014/12/30 职场文书
委托书的样本
2015/01/28 职场文书
2015年企业团支部工作总结
2015/05/21 职场文书
民主生活会意见
2015/06/05 职场文书
避坑之 JavaScript 中的toFixed()和正则表达式
2022/04/19 Javascript