js删除元素方法

delete删除方法

  • 对象属性删除数组

    function fun(){
    
    this.name = 'mm';
    
    }  
    
    var obj = new fun();
    
    console.log(obj.name);//mm
    
    delete obj.name;
    
    console.log(obj.name); //undefined
  • 变量删除函数

var name = 'lily';
    delete name;
    console.log(name); //lily
    直接使用delete删除不了变量
  • 删除不了原型链中的变量this

fun.prototype.age = 18;
    delete obj.age;
    console.log(obj.age) //18
  • 删除数组元素spa

    var textArr=['a','b','c'];
    delete textArr[1]//['a','undefined','c']

delete.png

splice方法

  • splice用法prototype

    splice(index,len,[item])

三个参数,能够用来替换、删除、添加数组内某一个值或多个值
index:数组开始下标
len:替换/删除的长度
item:替换的值,删除操做的话item为空code

  • 删除用法对象

    • 删除固定长度索引

    var arr=['a','b','c'];
     arr.splice(1,1) //['a','b']
    • 删除起始直到末尾原型链

var arr=['a','b','c'];
 arr.splice(1); //['c']
  • 替换用法
    item为替换的值rem

var arr=['a','b','c'];
arr.slice(1,2,'ttt'); //['a','ttt']
  • 添加用法
    item为添加的值

var arr=['a','b','c'];
arr.slice(1,0,'ttt'); //['a','ttt','b','c']

表示在1处添加一项

原型链方法

首先给js数组定义一个函数,用于查找指定元素在数组中的位置

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);
        }
    };
    var arrayText=['asc','ax','ab','ad'];
    arrayText.remove('ab');

利用此方法,本身定义找到索引和删除元素的方法,能够删除指定元素

相关文章
相关标签/搜索