ES6——Day2(跨模块常量+全局对象属性)

来源:互联网 发布:珠海软件测试培训机构 编辑:程序博客网 时间:2024/06/05 17:37

1、什么是模块?

在面向对象编程设计中,模块至少归属于一个“类”;

在javascript编程中,可以把js文件归属于一个模块。

案例1:module.js

<script type="text/traceur">//module.jsexport const intVariantName = 100;export const FloatVariantName = 3.1415926;export const charVariantName = "variantValue";//use.jsimport * as variant form './module';console.log(variant.intVariantName);   //100console.log(variant.charVariantName);   //3.1415926console.log(variant.charVariantName);   //variantValue</script>


解析:import表示导入文件;

variant表示的类似于“容器container”;

 module表示模块化。



2、什么是全局对象?

全局对象是最顶层的对象,在浏览器环境中指的是window对象;在Node.js中指的是global对象;

在JavaScript中,所有全局变量都是全局对象的属性。(Node情况比较特殊,这一条对REPL环境使用,模块环境必须显式声明global属性。)

ES6规定,var命令和function命令声明的全局变量,属于全局对象的属性;let命令、const命令、class命令声明的全局变量,不属于全局对象的属性。


<script type="text/traceur">var varName="varValue";//浏览器环境下console.log(window.varName);  //varValue//Node.js环境下//console.log(global.varName);//通用环境console.log(this.varName);    //varValuelet letName = "letValue";console.log(window.letName);   //undefined;console.log(this.letName);     //undefined</script>





1 0
原创粉丝点击