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删除数组元素并且数组长度减小的简单实例
Feb 14 Javascript
jquery mobile动态添加元素之后不能正确渲染解决方法说明
Mar 05 Javascript
在linux中使用包管理器安装node.js
Mar 13 Javascript
Node.js开发者必须了解的4个JS要点
Feb 21 Javascript
浅谈javascript的call()、apply()、bind()的用法
Feb 21 Javascript
省市选择的简单实现(基于zepto.js)
Jun 21 Javascript
vue params、query传参使用详解
Sep 12 Javascript
vue 使用ref 让父组件调用子组件的方法
Feb 08 Javascript
浅谈vue中.vue文件解析流程
Apr 24 Javascript
vue vue-Router默认hash模式修改为history需要做的修改详解
Sep 13 Javascript
Javascript新手入门之字符串拼接与变量的应用
Dec 03 Javascript
浅谈Vue开发人员的7个最好的VSCode扩展
Jan 20 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
用php实现的获取网页中的图片并保存到本地的代码
2010/01/05 PHP
php中eval函数的危害与正确禁用方法
2014/06/30 PHP
Javascript 面向对象之重载
2010/05/04 Javascript
node.js中的require使用详解
2014/12/15 Javascript
jQuery实现iframe父窗体和子窗体的相互调用
2016/06/17 Javascript
JavaScript基于原型链的继承
2016/06/22 Javascript
详解XMLHttpRequest(一)同步请求和异步请求
2016/09/14 Javascript
Vue自定义指令详解
2017/07/28 Javascript
web前端vue之CSS过渡效果示例
2018/01/10 Javascript
详解如何快速配置webpack多入口脚手架
2018/12/28 Javascript
ES6基础之字符串和函数的拓展详解
2019/08/22 Javascript
微信小程序实现吸顶效果
2020/01/08 Javascript
记一次用ts+vuecli4重构项目的实现
2020/05/21 Javascript
jQuery 实现扁平式小清新导航
2020/07/07 jQuery
vue通过接口直接下载java生成好的Excel表格案例
2020/10/26 Javascript
jquery实现拖拽添加元素功能
2020/12/01 jQuery
[04:19]DOTA2完美大师赛第四天精彩集锦
2017/11/26 DOTA
[51:00]Secret vs VGJ.S 2018国际邀请赛淘汰赛BO3 第一场 8.24
2018/08/25 DOTA
[00:59]DOTA2背景故事第二期之四大基本法则
2020/07/07 DOTA
深入解析Python中的集合类型操作符
2015/08/19 Python
详解python3中socket套接字的编码问题解决
2017/07/01 Python
使用Python编写Prometheus监控的方法
2018/10/15 Python
Python面向对象之类和对象实例详解
2018/12/10 Python
Pytorch之保存读取模型实例
2019/12/30 Python
python如何基于redis实现ip代理池
2020/01/17 Python
Python爬取数据并实现可视化代码解析
2020/08/12 Python
python爬取音频下载的示例代码
2020/10/19 Python
为中国消费者甄选天下优品:网易严选
2016/08/11 全球购物
HomeAway的巴西品牌:Alugue Temporada
2018/04/10 全球购物
益模软件Java笔试题
2012/03/27 面试题
论文指导教师评语
2014/04/28 职场文书
教师先进个人材料
2014/12/17 职场文书
北京英语导游词
2015/02/12 职场文书
Python代码,能玩30多款童年游戏!这些有几个是你玩过的
2021/04/27 Python
mysql分表之后如何平滑上线详解
2021/11/01 MySQL
win10怎么设置右下角图标不折叠?Win10设置右下角图标不折叠的方法
2022/07/15 数码科技