js删除数组指定的某个值或元素

  • Post author:
  • Post category:其他


我们在项目中,特别是网页需要一些javascript处理方法,确定能准备显示元素,

<script>

var arrays = new Array();


arrays = ['shanghai', 'beijing', 'zhejiang', 'jiangsu'];


  //数组对象定义一个函数
  Array.prototype.indexOf = function(val) {
    	for (var i = 0; i < this.length; i++) {
    		if (this[i] == val) return i;
    	}
    	return -1;
    };
    //得到这个元素的索引,数组自己固有的函数去删除这个元素
    Array.prototype.remove = function(val) {
    	var index = this.indexOf(val);
    	if (index > -1) {
    		this.splice(index, 1);
    	}
    };

   //删除某个元素值

   arrays.remove('zhejiang');
 
   console.log(arrays);//输出新的结果为:['shanghai', 'beijing', 'jiangsu']

</script>


js中的splice方法

splice(index,len,[item])    注释:该方法会改变原始数组。

splice有3个参数,它也可以用来

替换/删除/添加

数组内某一个或者几个值

index:数组开始下标        len: 替换/删除的长度       item:替换的值,删除操作的话 item为空

如:arr = [‘a’,’b’,’c’,’d’]


删除 —-  item不设置

arr.splice(1,1)   //[‘a’,’c’,’d’]         删除起始下标为1,长度为1的一个值,len设置的1,如果为0,则数组不变

arr.splice(1,2)  //[‘a’,’d’]          删除起始下标为1,长度为2的一个值,len设置的2


替换 —- item为替换的值

arr.splice(1,1,’ttt’)        //[‘a’,’ttt’,’c’,’d’]         替换起始下标为1,长度为1的一个值为‘ttt’,len设置的1

arr.splice(1,2,’ttt’)        //[‘a’,’ttt’,’d’]         替换起始下标为1,长度为2的两个值为‘ttt’,len设置的1



版权声明:本文为friend365原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。