开发中遇到一个问题,使用node写接口时发现我需要使用一个全局变量来记录一个参数,浏览器上有自己的全局对象 window,那在node里面全局对象是什么呢?进行一波百度发现: nodejs 下也有自己的全局对象 global,并且在各个模块下 都可以直接访问 global 对象
直接上代码,网码粘出了这样一段代码,猜测这段应该是在js文件下可以直接运行的,但是我使用的是ts文件,语法上不支持
global.a = 666; // 全局变量都在global对象中。
a = 555; //等价于 global.a = 555; 不用var,直接声明的变量是全局变量。 node中的全局变量都在global对象中。
console.log(global.a);
ts里面的写法,亲测有效
declare global{
namespace NodeJS{
interface Global{
cronExpressionArr,
local
}
}
}
global.cronExpressionArr = {}
global.local = {}
//页面上取值
console.log(global.cronExpressionArr)