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


Posted in Javascript onAugust 24, 2014

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

需求: 将一个元素插入到现有数组的特定索引处。听起来很容易和常见,但需要一点时间来研究它。

// 原来的数组
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 不能释放内存.
Sep 07 Javascript
用原生JavaScript实现jQuery的$.getJSON的解决方法
May 03 Javascript
Javascript与jQuery方法的隐藏与显示
Jan 19 Javascript
鼠标事件的screenY,pageY,clientY,layerY,offsetY属性详解
Mar 12 Javascript
基于jQuery实现表格的查看修改删除
Aug 01 Javascript
Jquery+Ajax+xml实现中国地区选择三级联动菜单效果(推荐)
Jun 09 jQuery
基于Bootstrap table组件实现多层表头的实例代码
Sep 07 Javascript
Vue2.5 结合 Element UI 之 Table 和 Pagination 组件实现分页功能
Jan 26 Javascript
layui 实现table翻页滚动条位置保持不变的例子
Sep 05 Javascript
世界上最短的数字判断js代码
Sep 09 Javascript
js判断鼠标移入移出方向的方法
Jun 24 Javascript
js基础语法与maven项目配置教程案例
Jul 15 Javascript
js获取checkbox复选框选中的选项实例
Aug 24 #Javascript
jQuery异步加载数据并添加事件示例
Aug 24 #Javascript
Jquery通过JSON字符串创建JSON对象
Aug 24 #Javascript
Jquery中扩展方法extend使用技巧
Aug 24 #Javascript
jquery使用$(element).is()来判断获取的tagName
Aug 24 #Javascript
jQuery响应鼠标事件并隐藏与显示input默认值
Aug 24 #Javascript
js delete 用法(删除对象属性及变量)
Aug 24 #Javascript
You might like
PHP 伪静态隐藏传递参数名的四种方法
2010/02/22 PHP
PHP大批量插入数据库的3种方法和速度对比
2014/07/08 PHP
php如何连接sql server
2015/10/16 PHP
完美的php分页类
2017/10/24 PHP
PHP设计模式之委托模式定义与用法简单示例
2018/08/13 PHP
ThinkPHP框架整合微信支付之Native 扫码支付模式一图文详解
2019/04/09 PHP
php封装实现钉钉机器人报警接口的示例代码
2020/08/08 PHP
深入理解Javascript中的循环优化
2013/11/09 Javascript
JavaScript将XML转成JSON的方法
2015/03/12 Javascript
使用JavaScript脚本无法直接改变Asp.net中Checkbox控件的Enable属性的解决方法
2015/09/16 Javascript
JavaScript仿商城实现图片广告轮播实例代码
2016/02/06 Javascript
js解决movebox移动问题
2016/03/29 Javascript
iScroll.js 使用方法参考
2016/05/16 Javascript
angular动态删除ng-repaeat添加的dom节点的方法
2017/07/20 Javascript
SeaJS中use函数用法实例分析
2017/10/10 Javascript
vue自定v-model实现表单数据双向绑定问题
2018/09/03 Javascript
NodeJS开发人员常见五个错误理解
2020/10/14 NodeJs
[06:06]2018DOTA2亚洲邀请赛主赛事第四日战况回顾 全明星赛欢乐上演
2018/04/07 DOTA
[01:30:55]VG vs Mineski Supermajor 败者组 BO3 第三场 6.6
2018/06/07 DOTA
Python实现图片滑动式验证识别方法
2017/11/09 Python
python lambda函数及三个常用的高阶函数
2020/02/05 Python
keras中的卷积层&池化层的用法
2020/05/22 Python
HTML5中的nav标签学习笔记
2016/06/24 HTML / CSS
英国信箱在线鲜花速递公司:Bloom & Wild
2019/03/10 全球购物
大学生毕业自我评价范文分享
2013/11/07 职场文书
建筑行业的大学生自我评价
2013/12/08 职场文书
工程采购员岗位职责
2014/03/09 职场文书
2014小学植树节活动总结
2014/03/10 职场文书
酒店节能减排方案
2014/05/26 职场文书
校园运动会广播稿
2014/10/06 职场文书
病人写给医生的感谢信
2015/01/23 职场文书
导游词之苏州寒山寺
2019/12/05 职场文书
详解CocosCreator项目结构机制
2021/04/14 Javascript
详解MySQL集群搭建
2021/05/26 MySQL
Java Shutdown Hook场景使用及源码分析
2021/06/15 Java/Android
关于Python使用turtle库画任意图的问题
2022/04/01 Python