JS数组array元素的添加和删除方法代码实例


Posted in Javascript onJune 01, 2015

js数组元素的添加和删除一直比较迷惑,今天终于找到详细说明的资料了,先给个我测试的代码^-^

var arr = new Array();
arr[0] = "aaa";
arr[1] = "bbb";
arr[2] = "ccc";
//alert(arr.length);//3
arr.pop();
//alert(arr.length);//2
//alert(arr[arr.length-1]);//bbb
arr.pop();
//alert(arr[arr.length-1]);//aaa
//alert(arr.length);//1

var arr2 = new Array();
//alert(arr2.length);//0
arr2[0] = "aaa";
arr2[1] = "bbb";
//alert(arr2.length);//2
arr2.pop();
//alert(arr2.length);//1
arr2 = arr2.slice(0,arr2.length-1); 
//alert(arr2.length);//0
arr2[0] = "aaa";
arr2[1] = "bbb";
arr2[2] = "ccc";
arr2 = arr2.slice(0,1); 
alert(arr2.length);//1
alert(arr2[0]);//aaa
alert(arr2[1]);//undefined

shift:删除原数组第一项,并返回删除元素的值;如果数组为空则返回undefined 
var a = [1,2,3,4,5]; 
var b = a.shift(); //a:[2,3,4,5]  b:1 

unshift:将参数添加到原数组开头,并返回数组的长度 
var a = [1,2,3,4,5]; 
var b = a.unshift(-2,-1); //a:[-2,-1,1,2,3,4,5]  b:7 
注:在IE6.0下测试返回值总为undefined,FF2.0下测试返回值为7,所以这个方法的返回值不可靠,需要用返回值时可用splice代替本方法来使用。 

pop:删除原数组最后一项,并返回删除元素的值;如果数组为空则返回undefined 
var a = [1,2,3,4,5]; 
var b = a.pop(); //a:[1,2,3,4]  b:5 //不用返回的话直接调用就可以了

push:将参数添加到原数组末尾,并返回数组的长度 
var a = [1,2,3,4,5]; 
var b = a.push(6,7); //a:[1,2,3,4,5,6,7]  b:7 

concat:返回一个新数组,是将参数添加到原数组中构成的 
var a = [1,2,3,4,5]; 
var b = a.concat(6,7); //a:[1,2,3,4,5]  b:[1,2,3,4,5,6,7] 

splice(start,deleteCount,val1,val2,...):从start位置开始删除deleteCount项,并从该位置起插入val1,val2,... 
var a = [1,2,3,4,5]; 
var b = a.splice(2,2,7,8,9); //a:[1,2,7,8,9,5]  b:[3,4] 
var b = a.splice(0,1); //同shift 
a.splice(0,0,-2,-1); var b = a.length; //同unshift 
var b = a.splice(a.length-1,1); //同pop 
a.splice(a.length,0,6,7); var b = a.length; //同push 

reverse:将数组反序 
var a = [1,2,3,4,5]; 
var b = a.reverse(); //a:[5,4,3,2,1]  b:[5,4,3,2,1] 

sort(orderfunction):按指定的参数对数组进行排序 
var a = [1,2,3,4,5]; 
var b = a.sort(); //a:[1,2,3,4,5]  b:[1,2,3,4,5] 

slice(start,end):返回从原数组中指定开始下标到结束下标之间的项组成的新数组 
var a = [1,2,3,4,5]; 
var b = a.slice(2,5); //a:[1,2,3,4,5]  b:[3,4,5] 

join(separator):将数组的元素组起一个字符串,以separator为分隔符,省略的话则用默认用逗号为分隔符 
var a = [1,2,3,4,5]; 
var b = a.join("|"); //a:[1,2,3,4,5]  b:"1|2|3|4|5"

再给个利用数组模拟javaStringBuffer处理字符串的方法:

/**
* 字符串处理函数
*/
function StringBuffer()
{
var arr = new Array;
this.append = function(str)
{
  arr[arr.length] = str; 
};

this.toString = function()
{
  return arr.join(""); //把append进来的数组ping成一个字符串
};
}

今天在应用中突然发现join是一种把数组转换成字符串的好方法,故封装成对象使用了:

/**
* 把数组转换成特定符号分割的字符串
*/
function arrayToString(arr,separator)
{
if(!separator) separator = "";//separator为null则默认为空
  return arr.join(separator); 
}

/**
* 查找数组包含的字符串
*/
function arrayFindString(arr,string)
{
var str = arr.join(""); 
  return str.indexOf(string); 
}
Javascript 相关文章推荐
扩展String功能方法
Sep 22 Javascript
JavaScript高级程序设计 读书笔记之十一 内置对象Global
Mar 07 Javascript
node.js实现BigPipe详解
Dec 05 Javascript
简介JavaScript中getUTCMonth()方法的使用
Jun 10 Javascript
js如何实现淡入淡出效果
Nov 18 Javascript
JavaScript实现解析INI文件内容的方法
Nov 17 Javascript
最常见的左侧分类菜单栏jQuery实现代码
Nov 28 Javascript
基于vue的fullpage.js单页滚动插件
Mar 20 Javascript
animate.css在vue项目中的使用教程
Aug 05 Javascript
vue webpack开发访问后台接口全局配置的方法
Sep 18 Javascript
bootstrap Table实现合并相同行
Jul 19 Javascript
JavaScript中clientWidth,offsetWidth,scrollWidth的区别
Jan 25 Javascript
JQuery判断checkbox是否选中及其它复选框操作方法合集
Jun 01 #Javascript
window.onload与$(document).ready()的区别分析
May 30 #Javascript
JQuery给网页更换皮肤的方法
May 30 #Javascript
jQuery实现给页面换肤的方法
May 30 #Javascript
js获取滚动距离的方法
May 30 #Javascript
jquery简单实现外部链接用新窗口打开的方法
May 30 #Javascript
Javascript实现div层渐隐效果的方法
May 30 #Javascript
You might like
非常精妙的PHP递归调用与静态变量使用
2012/12/16 PHP
php内嵌函数用法实例
2015/03/20 PHP
php删除指定目录的方法
2015/04/03 PHP
Thinkphp和onethink实现微信支付插件
2016/04/13 PHP
Laravel 添加多语言提示信息的方法
2019/09/29 PHP
style、 currentStyle、 runtimeStyle区别分析
2010/08/01 Javascript
jQuery Clone Bug解决代码
2010/12/22 Javascript
javascript游戏开发之《三国志曹操传》零部件开发(四)用地图块拼成大地图
2013/01/23 Javascript
鼠标划过实现延迟加载并隐藏层的js代码
2013/10/11 Javascript
js图片滚动效果时间可随意设定当鼠标移上去时停止
2014/06/26 Javascript
JavaScript中调用函数的4种方式代码实例
2015/07/08 Javascript
jquery实现具有嵌套功能的选项卡
2016/02/12 Javascript
浅析JavaScript中的对象类型Object
2016/05/26 Javascript
JavaScript 拖拽实例代码
2016/09/21 Javascript
js的三种继承方式详解
2017/01/21 Javascript
JS获取鼠标坐标并且根据鼠标位置不同弹出不同内容
2017/06/12 Javascript
基于daterangepicker日历插件使用参数注意的问题
2017/08/10 Javascript
vue 组件使用中的一些细节点
2018/04/25 Javascript
JavaScript函数式编程(Functional Programming)高阶函数(Higher order functions)用法分析
2019/05/22 Javascript
一文看懂如何简单实现节流函数和防抖函数
2019/09/05 Javascript
使用VUE实现在table中文字信息超过5个隐藏鼠标移到时弹窗显示全部
2019/09/16 Javascript
vue项目里面引用svg文件并给svg里面的元素赋值
2020/08/17 Javascript
python通过shutil实现快速文件复制的方法
2015/03/14 Python
python算法表示概念扫盲教程
2017/04/13 Python
python3实现UDP协议的服务器和客户端
2017/06/14 Python
python生成多个只含0,1元素的随机数组或列表的实例
2018/11/12 Python
Python判断一个文件夹内哪些文件是图片的实例
2018/12/07 Python
python实现爬虫抓取小说功能示例【抓取金庸小说】
2019/08/09 Python
Python搭建Keras CNN模型破解网站验证码的实现
2020/04/07 Python
在线服装零售商:SheIn
2016/07/22 全球购物
生产内勤岗位职责
2013/12/07 职场文书
大龄毕业生求职别忘职业规划
2014/03/11 职场文书
报告会主持词
2014/04/02 职场文书
幼儿园园长六一致辞
2015/07/31 职场文书
Python控制台输出俄罗斯方块的方法实例
2021/04/17 Python
python图像处理基本操作总结(PIL库、Matplotlib及Numpy)
2021/06/08 Python