JavaScript 删除对象属性的三种方法及动态属性操作详解

作者:木棉时间:2026-10-25 20:18:22浏览:269

本文介绍在 JavaScript 中删除对象属性的三种常用方法:使用 delete 关键字、利用解构赋值提取剩余属性,以及通过 Reflect.deleteProperty 进行反射操作。此外,文章还涵盖了动态添加、修改和删除对象属性与方法的技巧,包括使用方括号语法处理非标识符字符串作为属性名,帮助开发者灵活管理对象状态。

如何删除对象里的某个属性

这里记录几种删除属性的方法。

假设有一个对象 a,包含属性 b=1 和 c=2,目标是删除 b 并保留 c。

第一种方法是使用 delete 关键字。

let a = {b:1,c:2}
delete a.b//true
console.log(a)//{c:2}

第二种方法是利用解构赋值。

let a = {b:1,c:2}
let {b,...a} = a
console.log(a)//{c:2}

第三种方法是使用反射机制。

let a = {b:1,c:2}
Reflect.deleteProperty(a,"b");
console.log(a)//{c:2}

添加、修改、删除对象的属性和方法

在其他编程语言中,对象一旦创建便不可更改,若要为对象添加或修改成员,必须在对应的类中修改代码并重新编译实例化。

JavaScript 提供了灵活的机制来动态修改对象的行为,支持动态添加、修改和删除属性及方法。

例如,首先使用 Object 类创建一个空对象 user:

var user = new Object();

1.添加属性

此时 user 对象没有任何属性和方法,可以为其动态添加属性。

user.name = 'Amy';
user.age = 10;
user.address = "cn";

通过上述语句,user 对象便具有了三个属性:name、age 和 address,打印输出 user 如下:

如何删除对象里的某个属性

2.添加方法

添加方法的过程与添加属性类似:

user.call = function() {
    console.log('Hello, My name is '+ this.name);
}

这就为 user 对象添加了一个方法“call”,通过执行它,可以在控制台显示自己的名字介绍。

console.log(user);user.call();

打印结果如下:

如何删除对象里的某个属性

3.修改属性

修改一个属性的过程就是用新的属性替换旧的属性,例如:

user.name = 'Rose';
user.call = function() {
    console.log('Hello, this is '+ this.name);
}

这样就修改了 user 对象 name 属性的值和 call 方法。

如何删除对象里的某个属性

4.删除属性

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

user.name=undefined;
user.call=undefined;

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

如何删除对象里的某个属性

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

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

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

需要注意,在使用这种非标识符作为名称的属性时,仍然要用方括号语法来引用: alert(user[“my name”]);

而不能写为: alert(user.my name);

以上为个人经验,希望能给大家一个参考,也希望大家多多支持本站。

作者最新文章