js删除数组元素
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了js删除数组元素相关的知识,希望对你有一定的参考价值。
删除步骤如下:
ar arr = [ 1, 2, 3, 4, 5 ];
//原始数组
alert("原始数组:" + arr);// 1,2,3,4,5
//删除并且返回第一个元素
注:重复以上步骤即可
简称为js,一种直译式脚本语言,是一种动态类型、弱类型、基于原型的语言,内置支持类型;
它的解释器被称为JavaScript引擎,为浏览器的一部分,广泛用于客户端的脚本语言,最早是在html网页上使用,用来给HTML网页增加动态功能;
在1995年时,由Netscape公司的Brendan Eich,在网景导航者浏览器上首次设计实现而成。
二、js表达式:
表达式是指将常量、变量、函数、运算符和括号连接而成的式子;
根据运算结果的不同,表达式可分为算术表达式、字符表达式、和逻辑表达式。
array.splice([n]); 参考技术B var arr = [ 1, 2, 3, 4, 5 ];
//原始数组
alert("原始数组:" + arr);// 1,2,3,4,5
//删除并且返回第一个元素
alert("执行arr.shift() 返回 :" + arr.shift());//1
alert("数组:" + arr);//2,3,4,5
//删除并且返回最后一个元素
alert("执行arr.pop() 返回:" + arr.pop());//5
alert("数组:" + arr);//2,3,4
//在数组开头添加一个或者多个元素,返回数组新长度
alert("执行arr.unshift('one') 返回:" + arr.unshift("one"));//4
alert("数组:" + arr);//one,2,3,4
//在数组尾部添加一个或者多个元素,返回数组新长度
alert("执行arr.push('end') 返回:" + arr.push("end"));//5
alert("数组:" + arr);//one,2,3,4,end
//从第i个位置开始删除n个元素,返
arr.splice(0, 1);
alert("执行arr.splice(0,1) ");
alert("数组:" + arr);//2,3,4,end
//从第i个位置开始,删除n个元素,并且在这个位置插入s个元素
arr.splice(0, 0, "one");
alert("执行arr.splice(0,0,'one')");
alert("数组:" + arr);//one,2,3,4,end
http://www.w3school.com.cn/js/jsref_obj_array.asp
怎样删除js数组中的undefined?
在使用一个js数组的时候 有时候会出现一个undefined 怎么把这项删除?
1、若要删除其中的'b',有两种方法:delete方法:delete,这种方式数组长度不变,此时arr[1]变为fined了。
2、但是也有好处原来数组的索引也保持不变,此时要遍历数组元素可以才用。
3、这种遍历方式跳过其中undefined的元素,该方式IE4.o以后都支持了。
4、数组对象splice方法:arr.splice(1,1);这种方式数组长度相应改变,但是原来的数组索引也相应改变。
5、splice参数中第一个1,是删除的起始索引(从0算起),在此是数组第二个元素。
6、第二个1,是删除元素的个数,在此只删除一个元素,即'b';此时遍历数组元素可以用普通遍历数组的方式,比如for,因为删除的元素在数组中并不保留
7、该方法IE5.5以后才支持,值得一提的是splice方法在删除数组元素的同时,还可以新增入数组元素。
参考技术A思路
方法一:如果数组中的元素有意义的是非零或者非空,则可以根据if(!a[i])的方式进行判断
方法二:比较通用的判断undefined是使用typeof的方式,判断是不是等于字符串undefined
代码
var a=[];a[5]=7;
var b = [];//去除undefined后的结果
for(var i=0;i<a.length;i++)
if(typeof(a[i])!='undefined')
b.push(a[i]);
参考技术B 读取数据的时候判断是否为undefined 然后过滤掉 参考技术C 读取数据的时候判断是否为undefined 然后过滤掉 参考技术D fn = function (item)return item
arr.filter(fn)
以上是关于js删除数组元素的主要内容,如果未能解决你的问题,请参考以下文章