delete 是用于删除属性的单目运算符,其功能为从对象中删除以操作数指定的属性。delete 运算的运算结果为布尔值。如果属性被删除,或所要删除的属性不存在,则结果为真,否则结果为假。
| var hzh = { |
| name: "黄子涵", |
| tall: '177cm', |
| tel: 19124896017, |
| brother: "黄春钦", |
| mother: '陈兰英', |
| father: '黄开卓' |
| } |
| |
| delete hzh.father; |
| console.log("是否已经删除father属性:"); |
| console.log(delete father); |
| console.log(""); |
| console.log("看能不能访问father属性:"); |
| console.log(hzh.father); |
| [Running] node "e:\HMV\JavaScript\JavaScript.js" |
| 是否已经删除father属性: |
| true |
| |
| 看能不能访问father属性: |
| undefined |
| |
| [Done] exited with code=0 in 1.877 seconds |
在 JavaScript 中,从内部结构来看,全局变量是全局对象的属性。不过如果 delete 运算的操作数是一个全局变量,情况则有些特殊。
通过 var 声明的全局变量是无法被 delete 的,而没用使用 var 声明的隐式的全局变量则可以被 delete。不推荐使用隐式的全局变量。因此,原则上不应对全局
变量进行 delete 运算。
| var hzh = { |
| name: "黄子涵", |
| tall: '177cm', |
| tel: 19124896017, |
| brother: "黄春钦", |
| mother: '陈兰英', |
| father: '黄开卓' |
| } |
| |
| delete hzh; |
| console.log("是否已经删除全局变量hzh:"); |
| console.log(delete hzh); |
| console.log(""); |
| console.log("看能不能访问全局变量hzh:"); |
| console.log(hzh); |
| [Running] node "e:\HMV\JavaScript\JavaScript.js" |
| 是否已经删除全局变量hzh: |
| false |
| |
| 看能不能访问全局变量hzh: |
| { |
| name: '黄子涵', |
| tall: '177cm', |
| tel: 19124896017, |
| brother: '黄春钦', |
| mother: '陈兰英', |
| father: '黄开卓' |
| } |
| |
| [Done] exited with code=0 in 0.6 seconds |
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?