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语句中的CDATA标签的意义
May 09 Javascript
Ajax+Json 级联菜单实现代码
Oct 27 Javascript
JavaScript 注册事件代码
Jan 27 Javascript
js列举css中所有图标的实现代码
Jul 04 Javascript
JS对象转换为Jquery对象实现代码
Dec 29 Javascript
jquery实现键盘左右翻页特效
Apr 30 Javascript
详解Vue2+Echarts实现多种图表数据可视化Dashboard(附源码)
Mar 21 Javascript
js制作简单的音乐播放器的示例代码
Aug 28 Javascript
用POSTMAN发送JSON格式的POST请求示例
Sep 04 Javascript
Jquery遍历筛选数组的几种方法和遍历解析json对象,Map()方法详解以及数组中查询某值是否存在
Jan 18 jQuery
微信小程序手动添加收货地址省市区联动
May 18 Javascript
Vue微信公众号网页分享的示例代码
May 28 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
解析php中memcache的应用
2013/06/18 PHP
解析php5配置使用pdo
2013/07/03 PHP
PHP的mysqli_thread_id()函数讲解
2019/01/24 PHP
Laravel 连接(Join)示例
2019/10/16 PHP
javascript 仿QQ滑动菜单效果代码
2010/09/03 Javascript
基于jquery的返回顶部效果(兼容IE6)
2011/01/17 Javascript
javascript读取xml实现javascript分页
2013/12/13 Javascript
JS生成随机字符串的多种方法
2014/06/10 Javascript
浅谈JS原型对象和原型链
2016/03/02 Javascript
jquery 追加元素append、prepend、before、after用法与区别分析
2016/12/02 Javascript
JS实现的验证身份证及获取地区功能示例
2017/01/16 Javascript
Vue v2.4中新增的$attrs及$listeners属性使用教程
2018/01/08 Javascript
js异步上传多张图片插件的使用方法
2018/10/22 Javascript
vue项目中实现的微信分享功能示例
2019/01/21 Javascript
基于JavaScript实现贪吃蛇游戏
2020/03/16 Javascript
详解js创建对象的几种方式和对象方法
2021/03/01 Javascript
python调用cmd复制文件代码分享
2013/12/27 Python
Python实现字典的key和values的交换
2015/08/04 Python
python生成以及打开json、csv和txt文件的实例
2018/11/16 Python
django的csrf实现过程详解
2019/07/26 Python
python防止随意修改类属性的实现方法
2019/08/21 Python
PyCharm刷新项目(文件)目录的实现
2020/02/14 Python
Python如何使用正则表达式爬取京东商品信息
2020/06/01 Python
聊聊python中的异常嵌套
2020/09/01 Python
浅析python中的del用法
2020/09/02 Python
HTML5中使用postMessage实现两个网页间传递数据
2016/06/22 HTML / CSS
移动端HTML5 input常见问题(小结)
2020/09/28 HTML / CSS
德国亚洲食品网上商店:asiafoodland.de
2019/12/28 全球购物
Nixon手表英国官网:美国尼克松手表品牌
2020/02/10 全球购物
工商管理专业实习生自我鉴定
2013/09/29 职场文书
制定岗位职责的原则
2013/11/08 职场文书
应聘编辑职位自荐信范文
2014/01/05 职场文书
通信研究生自荐信
2014/02/01 职场文书
国防教育标语
2014/10/08 职场文书
2015年幼儿园中班开学寄语
2015/05/27 职场文书
祝寿主持词
2015/07/02 职场文书