窗口对象的所有全局变量和全局函数成员吗?

时间:2019-05-02 16:35:35

标签: javascript

在网页的浏览器中使用JavaScript时,

  • window对象的所有全局变量和全局函数成员吗?

  • window对象的所有成员都是全局变量和全局函数吗?

如果答案为否,

  • window对象的成员是哪种全局变量和全局函数?哪种不是?

  • window对象的哪些成员是全局变量和全局函数?哪种是本地的?

1 个答案:

答案 0 :(得分:2)

  

窗口对象的所有全局变量和全局函数成员都是吗?

使用var声明的所有全局变量和函数(以及根本没有声明的所有变量(!¹))。

  

窗口对象的所有成员都是全局变量和全局函数吗?

是的。 window变量本身实际上只是窗口对象的属性(undefinedNaN也不是关键字...)。

窗口对象的所有默认属性均为

1)the global object properties according to the ES spec

2)window specific properties according to the Web spec


¹您应该始终声明变量。您应该始终使用let / const来支持var(因为var name = 12; console.log(typeof name)会让您感到惊讶)。并且您应该使用"use strict;"模式来防止未声明的变量。