constructor方法和toString方法中;都出现了super关键字;它在这里表示父类的构造函数;
用来新建父类的this对象;
子类必须在constructor方法中调用super方法;否则新建实例时会报错;因为子类没有自己的this对象;
而是继承父类的this对象,然后对其进行加工。如果不调用super方法;子类就得不到this对象。
Es5的继承,实质是先创造子类的实例对象this;然后再将父类的方法添加到this上面;ES6的继承机制完全不同;
ES6;实质是先创造父类的实例对象this;然后再用子类的构造函数修改this;
ES6明确规定;class内部只有静态方法;没有静态属性。
ES6可以在编译时就完成模块加载;
从"fs"模块加载3个方法;其他方法不加载;“编译时加载”;
type="mosule" src=""
commonJS的一个模块;就是一个脚本文件;require命令第一次加载该脚本;就会执行整个脚本;然后再内存生成一个对象;
exports属性是模块输出的各个接口,loaded属性是一个布尔值;表示该模块的脚本是否执行完毕;其他还有很多属性;
以后需要用到这个模块的时候;就会到exports属性上面取值;即使再次执行require命令;也不会再次执行该模块;而是得到缓冲之中的值;
也就是说,commonJS模块无论加载多少次;都只会在第一次加载时运行一次;以后再加载,就返回地一次运行的结果;
除非手动清除系统缓存;