2-1
babel把ES6代码编译成了ES5的代码, 我们可以从dist的代码中拷贝ES5的代码,然后复制粘贴到小程序里,进行替换,可以看出,依然能够正常运行。说明其实小程序里用的就是ES5。
2-2
1、比如在模板index.html中,引入index.js,这里如果使用的是ES5模式,ES5代码没有默认使用严格模式,可能出现的潜在错误比较多,所以会有一句use strict 。在ES6中,默认是使用的严格模式的,就不需要这句话了。
2、注意函数表达式和函数声明的区别:
函数表达式 var fun1 = function( ){ } 这个是函数声明,先声明后使用。
函数表达式 function fun2( ){ } 这个是函数声明,因为声明会提前到顶部,所以可以先使用,后声明。
3、ES5 来实现面向对象,
(function(){
var class1 = function(){
this.fun1 = function(){ console.log('test' ) };
}
new class1().fun1(); //这里是调用
})( );
4、通过npm安装live-server。 终端输入: sudo cnpm install -g live-server
5、class1.prototype.fun2 = function(){ console.log('fun2' ) }; new class1().fun2();
6、在ES6中定义的方式:
class ClassTest{
constructor(){ console.log('我');}
fun1(){
console.log('fun1');
}
static fun2(){ console.log('2')
}
}
new ClassTest(); 就可以调用构造函数啦。
new ClassTest.fun1();
ClassTest.fun2();
网友评论