JavaScript中数组成员的添加、删除介绍


Posted in Javascript onDecember 30, 2014

JavaScript中,由于数组长度是可变的,因此可以通过直接定义新的成员而将其添加到数组中:

var o = [2,3,5];

o[3] = 7;

console.log(o);//[2,3,5,7]

除了这种方法,还可以通过使用push()语句来达到相同的目的:
o.push(11);

console.log(o);//[2,3,5,7,11]

o.push(13,17);

console.log(o);//[2,3,5,7,11,13,17]

如果需要在数组开头添加新的成员,可以使用unshift()语句:
o.unshift(2014);

console.log(o);//[2014,2,3,5,7,11,13,17]

o.unshift(2013, 2012);

console.log(o);//[2013,2012,2014, 2,3,5,7,11,13,17]

与push()对应,如果需要从数组末尾删除一个成员,可以使用pop()语句,pop()语句将返回这个被删除的成员,而数组长度将减少1:
var p = o.pop();

console.log(p);//17

console.log(o.length);//9

与unshift()对应,如果需要从数组开头删除一个成员,可以使用shift()语句,shift()语句将返回这个被删除的成员,而数组长度将减少1:
var s = o.shift();

console.log(s);//2013

console.log(o.length);//8

除了shift()语句和pop()语句,还可以通过delete操作符来删除数组中的成员。与shift()和pop()不同的是,delete操作后数组的length属性将保持不变,也即数组将变得不连续。

JavaScript中还可以通过设定数组的length属性来对数组进行修改:当length值小于数组成员数时,JavaScript将对数组进行截取;当length值大于数组成员数时,JavaScript会将数组变得不连续。如果length值只读,那么在数组中直接定义新成员的操作将会失败:

console.log(o);//[2012,2014, 2,3,5,7,11,13]

o.length = 2;

console.log(o);//[2012,2014]

o.length = 4;

console.log(o);//[2012,2014,undefined,undefined]
var a = [1,2,3];

Object.defineProperty(a, "length", {writable:false});

a[3] = 4;

console.log(a);//[1,2,3]
Javascript 相关文章推荐
js停止输出代码
Jul 20 Javascript
正则表达式搭配js轻松处理json文本方便而老古
Feb 17 Javascript
js时间戳转为日期格式的方法
Dec 28 Javascript
使用jQuery调用XML实现无刷新即时聊天
Aug 07 Javascript
微信小程序 icon组件详细及实例代码
Oct 25 Javascript
Angular2下使用pdf插件的方法详解
Apr 29 Javascript
微信小程序之发送短信倒计时功能
Aug 30 Javascript
Vuerouter的beforeEach与afterEach钩子函数的区别
Dec 26 Javascript
js 将线性数据转为树形的示例代码
May 28 Javascript
简单了解JavaScript中常见的反模式
Jun 21 Javascript
layui关闭弹窗后刷新主页面和当前更改项的例子
Sep 06 Javascript
js实现的在本地预览图片功能示例
Nov 09 Javascript
JavaScript 实现打印,打印预览,打印设置
Dec 30 #Javascript
JavaScript中的数组操作介绍
Dec 30 #Javascript
jQuery中:first选择器用法实例
Dec 30 #Javascript
JavaScript中的类数组对象介绍
Dec 30 #Javascript
JavaScript中的方法调用详细介绍
Dec 30 #Javascript
JavaScript中的闭包(Closure)详细介绍
Dec 30 #Javascript
JavaScript中的类(Class)详细介绍
Dec 30 #Javascript
You might like
基于Windows下Apache PHP5.3.1安装教程
2010/01/08 PHP
PHP英文字母大小写转换函数小结
2014/05/03 PHP
PHP的openssl加密扩展使用小结(推荐)
2016/07/18 PHP
jquery+thinkphp实现跨域抓取数据的方法
2016/10/15 PHP
Yii2实现log输出到file及database的方法
2016/11/12 PHP
PHP 7.0新增加的特性介绍
2017/06/08 PHP
PHP实现的杨辉三角求解算法分析
2019/03/11 PHP
php反射学习之依赖注入示例
2019/06/14 PHP
JavaScript中yield实用简洁实现方式
2010/06/12 Javascript
裁剪字符串trim()自定义改进版
2013/04/10 Javascript
jquery插件jquery.confirm弹出确认消息
2015/12/22 Javascript
vue.js学习之递归组件
2016/12/13 Javascript
jQuery实现获取form表单内容及绑定数据到form表单操作分析
2018/07/03 jQuery
vue.js中proxyTable 转发请求的实现方法
2018/09/20 Javascript
Vue-input框checkbox强制刷新问题
2019/04/18 Javascript
nodejs各种姿势断点调试的方法
2020/06/18 NodeJs
jquery插件懒加载的示例
2020/10/24 jQuery
paramiko模块安装和使用(远程登录服务器)
2014/01/27 Python
Python栈类实例分析
2015/06/15 Python
python中的lambda表达式用法详解
2016/06/22 Python
Python操作Excel插入删除行的方法
2018/12/10 Python
对Python生成器、装饰器、递归的使用详解
2019/07/19 Python
python实现切割url得到域名、协议、主机名等各个字段的例子
2019/07/25 Python
基于python调用jenkins-cli实现快速发布
2020/08/14 Python
使用scrapy ImagesPipeline爬取图片资源的示例代码
2020/09/28 Python
python 爬虫如何实现百度翻译
2020/11/16 Python
使用简单的CSS3属性实现炫酷读者墙效果
2014/01/08 HTML / CSS
详解HTML5中的标签
2015/06/19 HTML / CSS
塑料制成的可水洗的编织平底鞋和鞋子:Rothy’s
2018/09/16 全球购物
校园门卫岗位职责
2013/12/09 职场文书
父亲生日宴会答谢词
2014/01/10 职场文书
小学信息技术教学反思
2014/02/10 职场文书
请假条标准格式规范
2014/04/10 职场文书
机械电子工程专业自荐书
2014/06/10 职场文书
《失物招领》教学反思
2016/02/20 职场文书
虚拟机linux端mysql数据库无法远程访问的解决办法
2021/05/26 MySQL