javascript - `Function` 上的 `window` 标识符有什么意义?

标签 javascript

如果您打开控制台并输入 Function,它会自动为您补全,表明标识符 Function 是窗口对象的一部分。看起来好像 Function 标识符引用了一个空的匿名函数。

enter image description here

窗口上的Function标识符有什么意义?

最佳答案

Function是一个全局变量。全局变量是全局对象的属性。在浏览器中,全局对象是window

如果您问 Function 本身的用途是什么:它是一个构造函数(就像 ObjectArray RegExp)来创建新的函数对象。它允许您从字符串中包含的代码创建一个新函数(几乎类似于eval)。例如:

var myFunc = new Function('return 42;');
console.log(myFunc()); // 42

以这种方式创建的函数的行为就像它们在全局范围内声明的一样,即它们不会关闭它们实际创建的范围。

这对于评估用户提供的 JS 代码的浏览器工具非常有用,例如 Babel REPL .

关于javascript - `Function` 上的 `window` 标识符有什么意义?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30407784/

相关文章:

javascript - 从 socket.io 返回值

javascript - 将用户选择限制为节点而不使其可编辑?

javascript - 通过比较新旧数组对象获取唯一值

javascript - babel watch 语法错误 : Unexpected token

javascript - ExtJS PropertyGrid - 动态设置源

javascript - Angular 指令生成的链接上的 .stopPropagation() 具有嵌入功能

javascript - 无法对 div 内的每个 img 应用函数

javascript - 将选项附加到选择菜单?

javascript - 我如何使用日期格式自定义日期范围选择器并使用 i18n 提示文本

javascript - 两个 jQuery 事件处理程序 - 当两者都被触发时执行代码