2019年のes 6特性

1811 ワード

Es 6データ構造トレンド
  • mapコスト最低
  • データ構造においてMap,Setを優先的に考慮し,配列とObject
  • を放棄する.
    Lambda式と矢印関数
  • 2019年java 1を知っています.8のlambda式、ES 6に追加された矢印オペレータ=>は、異曲同工の妙がある.
  • 関数の書き方を簡略化します.オペレータの左は入力パラメータ、右は操作および戻り値Inputs=>outputs
  • である.
    classリザーブワード->キーワード
  • ES 6にはクラスのサポートが追加されており、classキーワード【class,extends superはJavaScriptでは常にリザーブワード】
  • が導入されている
    字面量オブジェクトの新しい書き方
  • オブジェクトの字面量が強化され、書き方がより簡潔で柔軟になりました.
  • Object.assign(target,source,source2); オブジェクトのマージに使用する
  • String拡張
  • Number拡張
  • Boolean拡張
  • export default {
        title:'',
        say(){},
        async say(){}, // await + Promise
        listen:()=>{},
    } 

    ES 6では、逆引用符`を使用して文字列を作成できます.
    //        console
    console.log(`your num is ${Math.random()}`);

    かいぞうわりあて
  • 配列またはオブジェクトの値を自動的に解析します.例えば、1つの関数が複数の値を返す場合、通常は1つのオブジェクト
  • を返す.
    [name,,age]=['wayou','male','secrect'];//    

    関数#カンスウ#
  • パラメータデフォルト値、不定パラメータ、拡張パラメータ
  • 不定パラメータは、関数においてネーミングパラメータを用いて不定数を同時に受信する未ネーミングパラメータ[arguments]
  • である.
  • 拡張関数は、apply
  • を介さずに、配列またはクラス配列を直接関数のパラメータとして渡すことを可能にする.
    //     
    function sayHello2(name='developler'){
        //var name=name||'dude'; 
        console.log(`Hello ${name}`);
    }
    
    
    //          
    const add = (...x)=>{
        //reduce()              
        return x.reduce(function(m,n){return m+n});
    }

    ES 6に新たに導入されたfor ofサイクル機能は類似してサイクル効率を向上させる
    var someArray = [ "a", "b", "c" ];
     
    for ((value) of someArray) {
        console.log(value);//   a,b,c
    }

    リファレンスリンク
    https://blog.csdn.net/weixin_33858249/article/details/91941626
    http://blog.sina.com.cn/s/blog_c112a2980102xqcu.htmljsデータ構造array object map set