document.writeln('name=' + name);
// name =
document.writeln('notName=' + notName);
// ReferenceError: notName is not defined
“名称”在 javascript 中有什么特殊含义吗? (在 IE 和 FF 中检查)
最佳答案
Is variable called “name” always defined in Javascript?
不。但是,在浏览器上有一个名为
name
的全局变量。这是当前窗口的名称。这是浏览器上的 JavaScript 全局对象是 Window 对象这一事实的副产品。一点解释:在 JavaScript 中,全局变量实际上是称为“全局对象”的东西的属性。在浏览器上,全局对象是页面的 Window 对象,因此它具有与它相关的各种预定义属性(因此全局变量)是 Window object , 包括但不仅限于:
name
- 当前窗口的名称 title
- 当前窗口的标题 status
- 状态区内容(除了大多数浏览器忽略它)document
- 当前窗口中的文档window
- 对全局对象的引用(例如,循环引用)setTimeout
- 用于安排稍后发生的事情的函数...还有许多其他人。它还可以将各种其他东西投入其中,例如每个具有
id
的 DOM 元素的属性。 (属性的名称是 id
,它的值是对 DOM 元素的引用),在某些浏览器上,对于带有 name
的 DOM 元素也是如此。属性(property)等等。它非常困惑。
关于javascript - 变量 "name"总是在 Javascript 中定义吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49163272/