JS中删除对象的某个属性

JavaScript016

JS中删除对象的某个属性,第1张

delete 是删除对象的属性的唯一真正的方法

但它的性能要比 object[key] = undefined 差很多

这个选择不是这个问题的正确答案!但是,如果你小心使用它,你可以大大加快一些算法。如果您delete在循环中使用并且在性能方面存在问题,可以考虑这种用法

在数组中,与普通的旧对象不同,使用delete在表单中留下垃圾,null在数组中创建一个“洞”, 而且length不变

以下二种方法是可以为input添加disabled属性的方法:

//两种方法设置disabled属性

$('#areaSelect').attr("disabled",true)

$('#areaSelect').attr("disabled","disabled")

以下三种方法是移除(去除)掉input的disabled属性的方法:

//三种方法移除disabled属性

$('#areaSelect').attr("disabled",false)

$('#areaSelect').removeAttr("disabled")

$('#areaSelect').attr("disabled","")

删除对象,直接使用delete就可以了。

比如:delete document.getElementById('div')

删除一个属性的过程也很简单,就是将其置为undefined:

user.name=undefined

user.alert=undefined

这样就删除了name属性和alert方法。在之后的代码中,这些属性变的不可用。

在添加、修改或者删除属性时,和引用属性相同,也可以采用方括号([])语法:

user[“name”]=”tom”

使用这种方式还有一个额外的特点,就是可以使用非标识符字符串作为属性名称,例如

标识符中不允许以数字开头或者出现空格,但在方括号([])语法中却可以使用:

user[“my name”]=”tom”

需要注意,在使用这种非标识符作为名称的属性时,仍然要用方括号语法来引用:

alert(user[“my name”])

而不能写为:

alert(user.my name)