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 相关文章推荐
Gird事件机制初级读本
Mar 10 Javascript
jquery.validate.js插件使用经验记录
Jul 02 Javascript
JS的location.href跳出框架打开新页面的方法
Sep 04 Javascript
jQuery实现新消息闪烁标题提示的方法
Mar 11 Javascript
jQuery关键词说明插件cluetip使用指南
Apr 21 Javascript
js库Modernizr的介绍和使用
May 07 Javascript
AngularJs 利用百度地图API 定位当前位置 获取地址信息
Jan 18 Javascript
ES6 如何改变JS内置行为的代理与反射
Feb 11 Javascript
layui复选框的全选与取消实现方法
Sep 02 Javascript
解决Layui当中的导航条动态添加后渲染失败的问题
Sep 25 Javascript
JavaScript如何实现图片处理与合成
May 29 Javascript
vue+animation实现翻页动画
Jun 29 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
substr()函数中文版
2006/10/09 PHP
PHP与MongoDB简介|安全|M+PHP应用实例详解
2013/06/17 PHP
php中判断数组相等的方法以及数组运算符介绍
2015/03/30 PHP
php命令行写shell实例详解
2018/07/19 PHP
对YUI扩展的Gird组件 Part-1
2007/03/10 Javascript
javascript 写类方式之一
2009/07/05 Javascript
超简单的jquery的AJAX用法
2010/05/10 Javascript
datagrid框架的删除添加与修改
2013/04/08 Javascript
JQuery跳出each循环的方法
2015/04/16 Javascript
JS设置cookie、读取cookie、删除cookie
2015/04/17 Javascript
windows下安装nodejs及框架express
2015/08/07 NodeJs
Bootstrap模仿起筷首页效果
2016/05/09 Javascript
jQuery实现的自定义弹出层效果实例详解
2016/09/04 Javascript
JavaScript 轮播图和自定义滚动条配合鼠标滚轮分享代码贴
2016/10/28 Javascript
JavaScript使用正则表达式获取全部分组内容的方法示例
2017/01/17 Javascript
angular.js 路由及页面传参示例
2017/02/24 Javascript
Angular CLI在Angular项目中如何使用scss详解
2018/04/10 Javascript
详解js location.href和window.open的几种用法和区别
2019/12/02 Javascript
Flexible.js可伸缩布局实现方法详解
2020/11/13 Javascript
web.py在SAE中的Session问题解决方法(使用mysql存储)
2015/06/24 Python
将Django项目部署到CentOs服务器中
2018/10/18 Python
python爬虫URL重试机制的实现方法(python2.7以及python3.5)
2018/12/18 Python
python自动化UI工具发送QQ消息的实例
2019/08/27 Python
python中resample函数实现重采样和降采样代码
2020/02/25 Python
使用tensorflow根据输入更改tensor shape
2020/06/23 Python
通过实例了解python__slots__使用方法
2020/09/14 Python
日语系毕业生推荐信
2013/11/11 职场文书
办公室前台岗位职责
2014/01/04 职场文书
《争吵》教学反思
2014/02/15 职场文书
2014年三八妇女节活动总结
2014/03/01 职场文书
孝女彩金观后感
2015/06/10 职场文书
2019年教师节活动策划方案
2019/09/09 职场文书
Nginx工作模式及代理配置的使用细节
2022/03/21 Servers
Java 超详细讲解IO操作字节流与字符流
2022/03/25 Java/Android
Python利用FlashText算法实现替换字符串
2022/03/31 Python
Python自动化实战之接口请求的实现
2022/05/30 Python