在javascript中,Array对象没有提供delete方法来删除数组,有的人会说js里本身就有一个delete方法可以删除数组元素,但你delete以后数组的长度并没改变,这并不是我们想要的结果,这个方法不好用。要实现数组删除有几种方法都可以实现。
一、用splice()方法
比如:var arr = ['a','b','c','d'];
alert(arr.length);
for(var i=0;i<arr.length;++i){
alert(arr[i]);
}
arr.splice(2,1);
alert(arr.length);
for(var i=0;i<arr.length;++i){
alert(arr[i]);
}
for(var i=0;i<arr.length;++i){
alert(arr[i]);
}
arr.splice(2,1);
alert(arr.length);
for(var i=0;i<arr.length;++i){
alert(arr[i]);
}
这是删除元素很好用的一种方法。
二、用pop()和shift()方法
function del(num){
for ( var i=0 ; i < this.length ; ++i ){
if ( this[i] == num ){
if ( i > this.length/2 ){
for ( var j=i ; j < this.length-1 ; ++j ){
this[j] = this[j+1];
}
this.pop();
}else{
for ( var j=i ; j > 0 ; --j ){
this[j] = this[j-1];
}
this.shift();
}
break;
}
}
}
for ( var i=0 ; i < this.length ; ++i ){
if ( this[i] == num ){
if ( i > this.length/2 ){
for ( var j=i ; j < this.length-1 ; ++j ){
this[j] = this[j+1];
}
this.pop();
}else{
for ( var j=i ; j > 0 ; --j ){
this[j] = this[j-1];
}
this.shift();
}
break;
}
}
}
三、遍历重构数组
function del(num){
for(var i=0;i<arr.length;++i){
if(arr[i]==num){
for(var j=i;j<arr.length-1;++j){
arr[j] = arr[j+1];
}
break;
}
}
arr.length -= 1;
}
for(var i=0;i<arr.length;++i){
if(arr[i]==num){
for(var j=i;j<arr.length-1;++j){
arr[j] = arr[j+1];
}
break;
}
}
arr.length -= 1;
}
三种方法都可以使用。
发表评论
-
String和InputStream的转换
2014-04-03 21:24 473String和InputStream的转换 1 ... -
JS暴虐查找
2014-03-18 16:40 549function JS_cruel_search(data, ... -
编码规范
2013-03-19 19:11 1014最近买了一本书《深入分析JavaWeb技术内幕》 学 ... -
[转]CAS原理
2012-10-16 16:49 1138在JDK 5之前Java语言是 ... -
关于V8 JavaScript Engine的使用方法研究(转)
2011-07-05 15:52 7954一、写在前面的话 随 ... -
window.showModalDialog和window.open关闭子页面时刷新父页面 IE7,IE8
2011-05-18 11:29 3957if(true){ ... -
能动态加载js的方法
2011-04-21 16:16 776//加载新的js function _GetJsDat ... -
Shapefile格式说明及读写代码示例
2011-04-18 16:24 1855Shapefile格式说明及读写代码示例 ESR ... -
JavaScript王者归来
2011-02-26 13:39 1282内容简介回到顶部↑ 你手中的这本《javascr ... -
oracle更改用户名后 OracleDBConsole不能启动
2010-12-20 10:31 1151更改机器名后重新配置oracle数据库参数 在命令行输入 ... -
<ww:select 标签只读
2010-06-17 12:00 2010struts2中如何使s:select标签只读 在开发op ... -
URL记录
2010-03-29 20:08 718http://blog.qq.com/qzone/622 ... -
Java 泛型的理解与等价实现
2009-12-17 10:54 677Java 泛型的理解与等价 ... -
软件行业规范化势在必行
2009-05-24 14:20 1096http://blog.csai.cn/user1/21567 ... -
MD5加密
2009-05-17 18:22 1091import java.io.IOException;i ... -
Struts Token 使用
2009-05-08 14:08 16821,先在一个Action中,调用saveToken(HttpS ... -
CVS权限设置
2009-05-08 11:22 1381不同用户设置不同的访问权限方法 ... -
转载http://blog.csdn.net/xidor/archive/2008/03/20/22
2009-04-21 20:50 1129// JavaScript Document /**//** ... -
java学习网站
2009-03-18 10:08 1199http://www.open-open.com/ http ... -
从“表内”,“表外”说起,商业银行业务学习(一)
2009-02-28 11:43 1373今天胡里胡涂又做了几张报表,忽然想起一年前也是在做类似的报表, ...
相关推荐
JavaScript内置对象相关介绍及用法ppt JavaScript内置对象相关介绍及用法
JavaScript内置对象(ppt)JavaScript内置对象(ppt)JavaScript内置对象(ppt)JavaScript内置对象(ppt)JavaScript内置对象(ppt)JavaScript内置对象(ppt)JavaScript内置对象(ppt)JavaScript内置对象(ppt)...
javaScript内置对象,javaScript,javaScript内置对象,javaScript,javaScript内置对象,javaScript
第10节 JavaScript内置对象.rar第10节 JavaScript内置对象.rar第10节 JavaScript内置对象.rar第10节 JavaScript内置对象.rar第10节 JavaScript内置对象.rar第10节 JavaScript内置对象.rar第10节 JavaScript内置对象....
JavaScript的内置对象;字符串对象的使用;JavaScript的内置对象;JavaScript的内置对象;JavaScript的内置对象;JavaScript的内置对象;JavaScript的内置对象;Math对象的使用;JavaScript的内置对象;JavaScript的内置对象;...
JavaScript内置对象大全.txt
JavaScript内置函数与内置对象.doc
我们知道JScript给我们... 要是熟悉JavaScript的话,会马上说,系统提供了一个delete操作,可以用来删除数组中的元素。对,JS系统里确实有一个delete可以删除数组中的元素。可是这个删除很难用,它确实可以删除元素,
目标掌握: javascript内置对象 String 对象 Math 对象 Date 对象 浏览器对象 浏览器对象简介 Window Document History Location Screen event
javascript本地对象_内置对象和宿主对象
JavaScript数组对象Array.pdf 学习资料 复习资料 教学资源
javascript的面向对象和内置对象讲解,包括了一些常用的方法和对象总结
JavaScript内置对象属性及方法大全
JavaScript数组对象Array案例.pdf 学习资料 复习资料 教学资源
本文实例总结了JavaScript数组Array对象增加和删除元素方法。分享给大家供大家参考。具体分析如下: pop 方法 移除数组中的最后一个元素并返回该元素。 arrayObj.pop( ) 必选的 arrayObj 引用是一个 Array 对象。 ...
HTML开发中的Javascript中Array 对象相关的几个方法学习总结
史上最全的javascript 内置对象大全。包含javascript中所有属性。方法。事件。真可谓是新手们不可多得的经典教材。值得收藏。
JavaScript内置对象(ppt).pdf
JavaScript 内置对象导览图