首页 >web前端 >js教程 >如何在 CoffeeScript 中定义全局变量?

如何在 CoffeeScript 中定义全局变量?

Mary-Kate Olsen
Mary-Kate Olsen原创
2024-11-28 14:02:11367浏览

How do I define Global Variables in CoffeeScript?

如何在 CoffeeScript 中定义全局变量?

您的 CoffeeScript 代码编译为 JavaScript,无需 var 语句,自动将所有变量插入到防止泄漏到全局名称空间。要有意定义全局变量,必须将它们指定为全局对象的属性。

浏览器中的“将它们作为属性附加到窗口”

浏览器的全局对象是窗户。要定义全局变量,请使用:

window.foo = 'baz';

Node.js

Node.js 缺少 window 对象。相反,它有一个导出对象传递到封装模块的包装器中。对于 Node.js,请使用:

exports.foo = 'baz';

同时针对 CommonJS 和浏览器

CoffeeScript 文档建议使用以下代码来针对 CommonJS 和浏览器:

root = exports ? this

这会检查是否定义了导出(Node.js),如果为 true,则将其分配给 root,否则分配浏览器的全局对象(窗口)。

在 Node.js 中,您可以直接分配给导出对象,该对象由 require 函数返回。但是,在 CoffeeScript 中,使用以下内容定义全局函数:

root = exports ? this
root.foo = ->
  'Hello World'

这会将函数 foo 分配给全局命名空间,无论您是在浏览器中还是使用 Node.js。

以上是如何在 CoffeeScript 中定义全局变量?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn