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 Firefox与IE 替换节点的方法
Feb 24 Javascript
JQuery实现动态适时改变字体颜色的方法
Mar 10 Javascript
12306验证码破解思路分享
Mar 25 Javascript
Bootstrap源码解读下拉菜单(4)
Dec 23 Javascript
收藏AngularJS中最重要的核心功能
Jul 09 Javascript
vue获取input输入值的问题解决办法
Oct 17 Javascript
Three.js实现简单3D房间布局
Dec 30 Javascript
详解关于微信setData回调函数中的坑
Feb 18 Javascript
js实现查询商品案例
Jul 22 Javascript
vue路由结构可设一层方便动态添加路由操作
Aug 31 Javascript
JavaScript canvas实现雨滴特效
Jan 10 Javascript
vue递归实现树形组件
Jul 15 Vue.js
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
ThinkPHP模型详解
2015/07/27 PHP
prototype1.4中文手册
2006/09/22 Javascript
asp 取文本框名称代码
2008/12/02 Javascript
jQuery使用动态渲染表单功能完成ajax文件下载
2013/01/15 Javascript
jQuery函数的等价原生函数代码示例
2013/05/27 Javascript
jQuery实现切换字体大小的方法
2015/03/10 Javascript
javascript中去除数组重复元素的实现方法【实例】
2016/04/12 Javascript
jQuery Mobile框架中的表单组件基础使用教程
2016/05/17 Javascript
javascript小数精度丢失的完美解决方法
2016/05/31 Javascript
js实时获取窗口大小变化的实例代码
2016/11/18 Javascript
JS二叉树的简单实现方法示例
2017/04/05 Javascript
node.js express中app.param的用法详解
2017/07/16 Javascript
vue绑定的点击事件阻止冒泡的实例
2018/02/08 Javascript
浅析Proxy可以优化vue的数据监听机制问题及实现思路
2018/11/29 Javascript
BootStrap表单验证中的非Submit类型按钮点击时触发验证的坑
2019/09/05 Javascript
js实现圆形菜单选择器
2020/12/03 Javascript
[20:57]Ti4主赛事第三天开幕式
2014/07/21 DOTA
[15:41]教你分分钟做大人——灰烬之灵
2015/03/11 DOTA
python中的hashlib和base64加密模块使用实例
2014/09/02 Python
Python 使用SMTP发送邮件的代码小结
2016/09/21 Python
Python+Kepler.gl轻松制作酷炫路径动画的实现示例
2020/06/02 Python
利用OpenCV中对图像数据进行64F和8U转换的方式
2020/06/03 Python
详细分析Python可变对象和不可变对象
2020/07/09 Python
UGG雪地靴德国官网:UGG德国
2016/11/19 全球购物
标签和贴纸印刷:Lightning Labels
2018/03/22 全球购物
金融专业毕业生推荐信
2013/11/26 职场文书
高一生物教学反思
2014/01/17 职场文书
高中家长寄语
2014/04/02 职场文书
五一活动标语
2014/06/30 职场文书
大学生职业生涯十年规划书范文
2014/09/17 职场文书
满月酒邀请函
2015/01/30 职场文书
幼师中班个人总结
2015/02/12 职场文书
2015年教师节主持词
2015/07/03 职场文书
2016大学生优秀志愿者事迹材料
2016/02/25 职场文书
ORM模型框架操作mysql数据库的方法
2021/07/25 MySQL
Java面试题冲刺第十五天--设计模式
2021/08/07 面试题