在JS数组特定索引处指定位置插入元素


Posted in Javascript onJuly 27, 2014

很多与数组有关的任务听起来很简单,但实际情况并不总是如此,而开发人员在很多时候也用不到他。最近我碰到了这样一个需求: 将一个元素插入到现有数组的特定索引处。听起来很容易和常见,但需要一点时间来研究它。

// 原来的数组 
var array = ["one", "two", "four"]; 
// splice(position, numberOfItemsToRemove, item) 
// 拼接函数(索引位置, 要删除元素的数量, 元素) 
array.splice(2, 0, "three"); 

array; // 现在数组是这个样子 ["one", "two", "three", "four"]

如果你对扩展原生 JavaScript 不反感,那么可以将这个方法添加到数组原型(Array prototype)中:

Array.prototype.insert = function (index, item) { 
this.splice(index, 0, item); 
};

此时,可以这样调用:

var nums = ["one", "two", "four"]; 
nums.insert(2, 'three'); // 注意数组索引, [0,1,2..] 
array // ["one", "two", "three", "four"]
Javascript 相关文章推荐
JavaScript 字符串连接性能优化
Dec 20 Javascript
url 特殊字符 传递参数解决方法
Jan 01 Javascript
js中关于new Object时传参的一些细节分析
Mar 13 Javascript
script不刷新页面的联动前后代码
Sep 18 Javascript
Js实现双击鼠标自动滚动屏幕的示例代码
Dec 14 Javascript
jQuery+PHP实现可编辑表格字段内容并实时保存
Oct 09 Javascript
面包屑导航详解
Dec 07 Javascript
关于vue编译版本引入的问题的解决
Sep 17 Javascript
JS实现从对象获取对象中单个键值的方法示例
Jun 05 Javascript
javascript系统时间设置操作示例
Jun 17 Javascript
vue组件暴露和.js文件暴露接口操作
Aug 11 Javascript
用webAPI实现图片放大镜效果
Nov 23 Javascript
多个$(document).ready()的执行顺序实例分析
Jul 26 #Javascript
jquery 取子节点及当前节点属性值
Jul 25 #Javascript
jquery text()方法取标签中的文本
Jul 25 #Javascript
jquery根据属性和index来查找属性值并操作
Jul 25 #Javascript
判断日期是否能跨月查询的js代码
Jul 25 #Javascript
直接在JS里创建JSON数据然后遍历使用
Jul 25 #Javascript
使用documentElement正确取得当前可见区域的大小
Jul 25 #Javascript
You might like
php全局变量和类配合使用深刻理解
2013/06/05 PHP
php数据类型判断函数有哪些
2013/09/23 PHP
分享下页面关键字抓取components.arrow.com站点代码
2014/01/30 PHP
Javascript调用XML制作连动下拉列表框
2006/06/25 Javascript
向fckeditor编辑器插入指定代码的方法
2007/05/25 Javascript
javascript 浏览器判断 绑定事件 arguments 转换数组 数组遍历
2009/07/06 Javascript
JavaScript OOP类与继承
2009/11/15 Javascript
基于jquery的表头固定的若干方法
2011/01/27 Javascript
node在两个div之间移动,用ztree实现
2013/03/06 Javascript
jquery实现弹出窗口效果的实例代码
2013/11/28 Javascript
js创建对象的区别示例介绍
2014/07/24 Javascript
JS实现仿京东淘宝竖排二级导航
2014/12/08 Javascript
学习JavaScript设计模式之享元模式
2016/01/18 Javascript
JavaScript仿flash遮罩动画效果
2016/06/15 Javascript
基于jQuery封装的分页组件
2017/06/26 jQuery
Three.js利用dat.GUI如何简化试验流程详解
2017/09/26 Javascript
three.js 入门案例详解
2018/01/23 Javascript
Angularjs中date过滤器失效的问题及解决方法
2018/07/06 Javascript
layer实现弹出层自动调节位置
2019/09/05 Javascript
Vue.js暴露方法给WebView的使用操作
2020/09/07 Javascript
[01:14]3.19DOTA2发布会 三代刀塔人第二代
2014/03/25 DOTA
[01:26]神话结束了,却也刚刚开始——DOTA2新英雄玛尔斯驾临战场
2019/03/10 DOTA
利用TensorFlow训练简单的二分类神经网络模型的方法
2018/03/05 Python
numpy实现合并多维矩阵、list的扩展方法
2018/05/08 Python
python矩阵/字典实现最短路径算法
2019/01/17 Python
Python提取转移文件夹内所有.jpg文件并查看每一帧的方法
2019/06/27 Python
Python实现的统计文章单词次数功能示例
2019/07/08 Python
tensorflow从ckpt和从.pb文件读取变量的值方式
2020/05/26 Python
DAWGS鞋官方网站:鞋,凉鞋,靴子
2016/10/04 全球购物
团队精神演讲稿
2013/12/31 职场文书
公务员转正考察材料
2014/02/07 职场文书
初中三好学生自我鉴定
2014/04/07 职场文书
物理分数没达标检讨书
2014/09/13 职场文书
党员教师群众路线思想汇报范文
2014/10/28 职场文书
学校远程教育工作总结
2015/08/11 职场文书
学生会干部任命书
2015/09/21 职场文书