JavaScript对象属性添加与删除:点号与中括号的用法对比

作者:闭包旅人

时间:2026-10-28

浏览:561

本文通过JavaScript代码示例,详细演示了如何使用点号(.)和中括号([])为对象添加属性,以及使用delete关键字删除属性。重点解析了两种添加方式的等价性与差异,特别是中括号支持动态属性名和函数返回值作为键名的优势,并展示了删除属性后访问返回undefined的行为。

</body>

以下代码展示了具体实现方式:

 
JavaScript对象属性操作完整示例<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
<script type="text/javascript">
/* 
/*
* 使用点号(.)为对象添加属性
* 使用关键字 delete 删除属性
* 使用中括号([])添加属性
* 与点号方式的不同之处
* r.name 等同于 r["name"]
* r.name 仅能添加字符串类型的属性名
*/ 
*/
var r = new Object();
alert(typeof(r));
// 添加属性示例
r.name = "jobs";
alert(r.name);
r.getname = function(){
} 
return "jobs";
};
alert(r.getname());
// 删除属性示例
//-------------------------------------------- 
delete r.name;
alert(r.name); // 此时结果为 undefined
// 使用中括号为对象添加属性
r["name"] = "tom";
alert(r["name"]);
r.name = "toms";
alert(r["names"]);
// r.name 与 r["name"] 这两种写法在功能上是等价的
var arg = "abc";
r[arg] = "heima"; // 功能更强大,支持动态添加属性,属性名可以是函数变量返回的字符串
r.arg = "itcast"; // arg 默认为字符串
</script>
</head>
<body>

实用工具推荐

电子包浆

绿化、压缩、噪点和虚拟水印,自由调节做旧程度。

使用 ›
图片压缩

选择画质和输出格式,预览压缩前后的大小。

使用 ›
相关文章