1. 用var关键字声明
- 浏览器环境
- node环境
- 直接在terminal输入
- 在文件中通过var声明,然后用node执行
global.age
输出的居然是undefined,简直了,搜索下,node环境下通过var声明的对象是挂载到哪里? 说明,在terminal输入代码跟文件里写代码用node执行文件,是不同的,在文件里写的代码被函数包裹着,所以不会挂到全局global对象,这个包裹着的函数是用作模块化的
(function(exports, require, module, filename, dirname)){
//你执行的代码
}
关于node模块化,在阮一峰require() 源码解读有解释
2. 不用关键字声明变量
这点在浏览器环境 node环境 得到的结果都是一样的,都会挂到全局对象(window或者global对象)
浏览器环境 node环境
网友评论