ビルドにA. ES6のビルド環境
package.json初期化ファイルのNPMを作成します。1.
npm init
WebPACKのをインストールします。2.
cnpm install webpack -D
コンパイル文法ES6にバベル関連のパッケージをインストールします3。
cnpm install babel-loader babel-core babel-preset-es2015 -D
第二に、書き込みが設定コンパイラES6、コンフィギュレーションファイルをwebpack.config.js
1.ローダー設定
module.exports = {
entry:'./entry.js',
output:{
filename:'./bundle.js'
},
module:{
loaders:[
{
test:/\.js$/,
loader:'babel-loader',
exclude:/node_modules/
}
]
}
}
2.プロファイルを作成.babelrc
{
"presets": ["es2015"]
}
李三回、ES6および代替anguments ...
リチウムターゲットと代替anguments以上1
{
function test3(...arg){
for(let v of arg){
console.log("rest",v);
}
}
test3(1,2,3,4,5,"a");
}
李、Object.entries以上のオブジェクトの2. ES6
{
let test ={x:1,y:456};
for(let [key,value] of Object.entries(test)){
console.log([key,value]);
}
}
第四に、継承されたクラスのクラス。
追加:一般的な方法は、また、それが継承することができ、クラスに属する静的メソッドのうち、オブジェクトをインスタンス化することです。
1.クラスの基本的な定義は、インスタンスを生成します
{
class Person{
//构造函数。
constructor(name = "laozhou"){ //默认值:laozhou
this.name = name;
}
}
let p1 = new Person("小王"); //new的时候自动执行构造函数。
console.log("构造函数和实例",p1);
}
2.継承
extends 继承
super 上一级,可以调用父类的构造函数。
{
class Father {
constructor(name="侯瑞强",sex="男") {
this.name = name;
this.sex = sex;
}
}
class Child extends Father {
constructor(name="child",sex) { //把父类的本事拿了过来。
super(name,sex); //调用父类的构造函数。super必须在第一行,否则报错。
this.age = 10;
}
}
console.log("子类覆盖父类属性的实例",new Child());
}
3.静的プロパティ
{
class Person {
constructor(name="默认") {
this.name = name;
}
}
//静态属性的定义,是直接给类下的属性赋值,该属性就是静态属性,类名点什么直接定义
Person.type = "text"; //type就是静态属性。
console.log(Person.type);
}
第五に、モジュラー
1.輸出exprot、導入インポート
輸出
export default{
a:1,
b:2,
say(){
console.log("i can say");
}
}
インポート
import Model2 from "./module2.js";
console.log(Model2);
第六に、末尾呼び出し
一个函数执行,执行到最后的时候调用了另一个函数。
function go(callback){
console.log(1231313);
console.log("vvv");
callback && callback();
}
function tail(){
console.log(123131313);
}
go(tail);