node环境下通过var声明的对象是挂载到global全局对象上面吗?但是我通过global.变量名 打印出来的结果怎么是undefined呢?
求大佬帮忙解疑一下?
var age = 22;
var printAge = function (age) {
console.log(age);
}
console.log('var声明的变量',window.age===22);//false
console.log('var声明的变量',window.printAge===printAge);//false
console.log(global);//window
console.log(global.age);//undefined
那是因为你执行的代码被函数包裹,
var
在函数作用域顶部。而如果你是进入node
指令窗口写这段代码,那就在global
上。