1
0
mirror of https://github.com/ruanyf/es6tutorial.git synced 2025-05-29 05:42:20 +00:00

docs(module): edit Module

This commit is contained in:
ruanyf 2017-02-13 11:32:56 +08:00
parent c4ee209c88
commit e5c9ccadca
2 changed files with 5 additions and 1 deletions

View File

@ -508,7 +508,7 @@ int8[0] = -129;
int8[0] // 127
```
上面例子中,`int8`是一个带符号的8位整数视图它的最大值是127最小值是-128。输入值为`128`时,相当于正向溢出`1`根据“最小值加上余值128除以127的余值是1再减去1”的规则就会返回`-128`;输入值为`-129`时,相当于负向溢出`1`,根据“最大值减去余值(-129除以-127的余值是2再加上1”的规则就会返回`127`
上面例子中,`int8`是一个带符号的8位整数视图它的最大值是127最小值是-128。输入值为`128`时,相当于正向溢出`1`根据“最小值加上余值128除以127的余值是1再减去1”的规则就会返回`-128`;输入值为`-129`时,相当于负向溢出`1`,根据“最大值减去余值(-129除以-128的余值是1再加上1”的规则就会返回`127`
`Uint8ClampedArray`视图的溢出规则与上面的规则不同。它规定凡是发生正向溢出该值一律等于当前数据类型的最大值即255如果发生负向溢出该值一律等于当前数据类型的最小值即0。

View File

@ -104,6 +104,10 @@ const isNotModuleScript = this !== undefined;
- CommonJS 模块输出的是一个值的拷贝ES6 模块输出的是值的引用。
- CommonJS 模块是运行时加载ES6 模块是编译时输出接口。
第二个差异是因为 CommonJS 加载的是一个对象(即`module.exports`属性),该对象只有在脚本运行完才会生成。而 ES6 模块不是对象,它的对外接口只是一种静态定义,在代码静态解析阶段就会生成。
下面重点解释第一个差异。
CommonJS 模块输出的是值的拷贝,也就是说,一旦输出一个值,模块内部的变化就影响不到这个值。请看下面这个模块文件`lib.js`的例子。
```javascript