delete object.property
delete object['property']
delete *** 作符会从某个对象上移除指定属性。成功删除的时候回返回 true,否则返回 false。但是,重要的是要考虑以下情况:
如果你删除的属性在对象上不存在,那么delete将不会起作用,但仍会返回true
如果 delete *** 作符删除成功,则被删除的属性将从所属的对象上彻底消失。然后,如果该对象的原型链上有一个同名属性,则该对象会从原型链上继承该同名属性。(也就是说delete *** 作只会在自身前贺的慎悔属性上起作用)
任何使用 var 声明的属性不能从全局作用域或函数的作用域中删除。
这样的话,delete *** 作不能删除任何在全局作用域中的函数(无论这个函数是来自于函数声明或函数表达式)
除了在全局作用域中的函数不能被删除,在对象(object)中的函数是能够用delete *** 作删除的。
任何用let或const声明的属性不能够从它被声明的作用域中删除。
不可设置的(Non-configurable)属性不能被移除。这意味着像Math, Array, Object内置对象的属性以及使用Object.defineProperty()方法设置为不可设置的属性不能被删除。
var Employee 慧孝派= {age: 28,
name: 'abc',
designation: 'developer'
}
delete Employee.name
console.log(Employee.name)// undefined
1、添加元素
函数:push(para),参数说明para要添加的元素
示例:
var lang = ["php","java","javascript"]
lang.push('.net')
结果没团:lang = ["php","java","javascript",".net"]
2、删除和替换元素
函数:splice(para1,para2,para3),参数说明para1其实悄察判位置(从0开始),para2要删除的元素个数,para3(可选)要替换的元素
示例:
a、删除
var lang = ["php","java","javascript"]
lang.splice(0,1)
结果:lang = ["java"启改,"javascript",".net"]
b、替换
var lang = ["php","java","javascript"]
lang.splice(0,1,'.net')
结果:lang = [".net","javascript",".net"]
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)