Javascript 进阶 4-3 变数及物件属性的差异

上一篇文章我们学到了如何针对 物件 进行 新增、修改、删除 其中属性的动作。

那么这篇要额外补充,谈谈 window 这个专属于 浏览器 的物件。

这个物件在浏览器中是最早生成的物件,我们把它印出来看看

console.log(window);

印出来之后,展开来看呢~

http://img2.58codes.com/2024/20121770kYiHPqwKZp.png

就会发现有很多内容以及方法

那么为什么特别要提这个呢,就是当我们宣告变数的时候,window的物件中也会出现我们宣告的变数,以及变数的值

例如说

var a = 'dog';console.log(window);

之后我们就可以在window物件中找到 a: 'dog' 的 property 以及 value。

http://img2.58codes.com/2024/20121770RjYJxUjUZ0.png

那么还有一种宣告的方法,就是不使用 var ,如下所示

var a = 'dog';b = 'cat';console.log(window);

印出来之后,b 一样会出现在 window 这个物件下

http://img2.58codes.com/2024/20121770AFwfD1noFn.png

有了上述这些观念之后,要介绍另一个观念,那就是

变数无法被删除,属性才可以

以上述的例子来说 a 是我们透过 var 无法被删除

而 b 则是属性

所以如果我们用 delete 对两者进行删除的话,只有 b 会从 window 物件中被删除喔!

var a = 'dog';b = 'cat';console.log(window);delete a;delete b;console.log(window);

http://img2.58codes.com/2024/20121770awKdGmUBKc.png

并且直接在开发人员工具的 Console 面板中直接执行,他也会回传布林值告诉你是否删除成功喔!

http://img2.58codes.com/2024/201217700b5QsyrMXl.png

以上就是本文章的补充说明~希望对大家有帮助!汪汪


关于作者: 网站小编

码农网专注IT技术教程资源分享平台,学习资源下载网站,58码农网包含计算机技术、网站程序源码下载、编程技术论坛、互联网资源下载等产品服务,提供原创、优质、完整内容的专业码农交流分享平台。

热门文章