js中删除数组或对象

JavaScript010

js中删除数组或对象,第1张

在vue中使用

vue.delete()

删除对象属性

通过delete操作符, 可以实现对对象属性的删除操作, 返回值是布尔

例:      var obj={name: 'zhagnsan',age: 19 }

            delete obj.name //true

            typeof obj.name //undefined

同样可用于函数,数组,变量,对象,但对象不能删除,只能做到删除对象属性

删除变量

例: var name ='zs' //已声明的变量

        delete name  //false

        console.log(typeof name)  //String

        age = 19  //未声明的变量

        delete age //true

        typeof age //undefined

        this.val = 'fds'  //window下的变量

        delete this.val   //true

        console.log(typeof this.val)  //undefined

删除数组

以声明数组返回false,未声明返回true

var arr = ['1','2','3'] ///已声明的数组

delete arr //false

console.log(typeof arr)  //object

arr = ['1','2','3']  //未声明的数组

delete arr  //true

console.log(typeof arr)  //undefined

var arr = ['1','2','3']  //已声明的数组

delete arr[1]  //true

console.log(arr)  //['1','empty','3']

删除函数

var fn = function(){} //已声明的函数

delete fn //false

console.log(typeof fn)  //function

fn = function(){}  //未声明的函数

delete fn //true

console.log(typeof fn)  //undefined

删除对象

var person = {

  height: 180,

  long: 180,

  weight: 180,

  hobby: {

    ball: 'good',

    music: 'nice'

  }

}

delete person  ///false

console.log(typeof person)  //object

var person = {

  height: 180,

  long: 180,

  weight: 180,

  hobby: {

    ball: 'good',

    music: 'nice'

  }

}

delete person.hobby  ///true

console.log(typeof person.hobby)  //undefined

var a = new Array("a","b","cc","d3")//

删除a数组的cc元素

//jQuery.inArray()函数用于在数组中搜索指定的值,并返回其索引值。如果数组中不存在该值,则返回 -1。该函数属于全局jQuery对象。

jquery 1.2中添加的该静态方法var index = $.inArray("cc",a)

if(index>=0){//arrayObject.splice(index,howmany,item1,.....,itemX)

//参数描述//index  必需。

整数,规定添加/删除项目的位置,使用负数可从数组结尾处规定位置,//howmany 必需。要删除的项目数量。如果设置为 0,则不会删除项目。

//item1, ..., itemX 可选。向数组添加的新项目。

 a.splice(index,1)

 alert(a.totring())

}else{

 alert("error") return false

}

声明创建一个数组对象: var arr = new Array() 或者 var arr = []

连接两个或者多个数组,并且返回该数组,语法: array.concat(object,object,......)

通过指定字符(参数)对数据进行分割,返回字符串,参数省略的话则用默认用逗号为分隔符

删除数组的最后一个对象,返回该删除元素的值

向数组末尾添加一个或者多个对象,语法: array.push(newObject1,newObject2,.....)

删除数组的第一个对象,并返回删除的元素

向数组开头添加一个或者多个元素,并返回新的长度

从已知数组中返回指定选中的数据(不包括end 对应的元素),如果省略 end 将复制 start 之后的所有元素,该操作不会修改原数组的数据, slice(start,end)

向数组中删除/添加对象,并返回被删除的元素

splice(index,count,item1,item2,......)

方法用户对数组的排序, sort(sortby) ,sortby可选,必须是函数。如调用方法没有使用参数,则按字母顺序进行排序。

只要有一个满足的就返回true,没有满足的返回false

验证数组中是否每个元素都满足指定的条件

没有返回值,可以不知道数组长度

arr.forEach(function(res,index){ })

返回值组成新数组,原数组不变

过滤通过条件的元素组成一个新数组,原数组不变

查找出第一个符合条件的数组成员,并返回该成员,如果没有找到就返回undefine

找到的是位置,找不到返回 -1

填充, arr.fill(填充的东西,start,end) 包括end