ES5およびES6、いくつかの統合されたアプリケーション(継続的に更新)

1. lengthプロパティ機能

ES5、そのような表示機能としての仮パラメータ(すなわち、受信パラメータを所望の)、(A、B、C){/の数の長さを表す /}; display.length等しい3。
ES6ための状況が異なっている:
(1)デフォルトの機能パラメータ
デフォルトパラメータを指定した後、長さの関数パラメータを返すが、数のデフォルトパラメータを指定しません

funciton display(str1='test',str2){
    console.log(str1+str2);
}
display.length;//1

(2)残りは(...変数名)
RESTパラメータはlengthプロパティに考慮されません

funciton display(str1,...strs){
        console.log(str1+str2);
    }
    display.length;//1

2.アレイ変換いくつかの方法で真のアレイ

ES5で:Array.prototype.slice.call();

Array.prototype.slice.call(arguments);//argemtns->Array

ES6は:
(1)Array.from()オブジェクトを変換することができ、同様のオブジェクトが配列の実数の配列で横断することができます

var arr = Array.from(arguments);

(2)引数を置く:「...変数名は、」主に引数オブジェクトを変換する際に使用されるアレイであります

把arguments类数组对象变为真正的对象:
funciton display(...arr){
    //...arr代替arguments
    arr instanceof Array //true
}

(3)拡張演算子:

[...arrayLive]

(4)設定方法:

new Set(arrayLive);

3.メモ関数function(理解に焦点を当てる)にいくつかのこと

所有していないこの機能を矢印、この外側の層は、これはの関数であり
、in vivoで(1)関数は、オブジェクトが代わりに配置されている場合、定義でこのオブジェクト嘘の対象である
コンストラクタとして機能できない(2)。それは、新しいコマンドを使用するのではなく、それ以外の場合はエラー
(3)関数の本体内に存在しない引数のオブジェクトを使用することはできません。私たちは、パラメータを休ませる場合の代わりに使用することができ
、収率を使用して(4)命令することはできません、そうではない関数の矢印を行いますジェネレータ関数の
詳細は、以下を参照してください。HTTPを://es6.ruanyifeng.com/#do ...

4. [追加ES6オブジェクト属性

Object.assign:ターゲットオブジェクトにソースオブジェクトの列挙された属性のすべてをコピーするために使用することができます
Object.assign(targetObjは、ソース1、ソース2:構文 、...)
例えば:

var target = {a:1,b:2};
var source1 = {c:3};
var source2 = {d:4};
Object.assign(target,source1,source2);
target//{a:1,b:2,c:3,d:4};

ここではいくつかの注意点がある:
(1)自由なプロパティのみをコピーし、プロパティ列挙されている
。このコピーは浅いコピーである(2)
(3)元のオブジェクト属性を持つターゲット・オブジェクトは、同じ名前、または元の複数の被写体がある場合同じname属性は、属性の後に、以前のプロパティを上書き

5.オブジェクトのプロパティのリストをトラバースする方法

ES5 falseに列挙属性を無視するには、3つの方法があります
のために...ループ中(1):トラバースオブジェクト自身と継承列挙性質
(2)Object.keys():オブジェクトを返し自体がすべて列挙をプロパティのキー名
(3)(json.stringify):唯一のシリアライズされたオブジェクト自体が属性列挙することができ
ES6を二つの新しい操作がfalseに列挙属性では無視されます
(1)Object.assign():のみオブジェクトのコピー自体はある列挙プロパティ
すべてのための...でリターンは、プロパティを歩く:(2)Reflect.enumerate()

トラバーサル属性:
ES6をオブジェクトを通過する6つの方法があります
のために...ループで(1):トラバースオブジェクト自身と継承列挙性質
(2)Object.keysは():オブジェクトを返し自身のすべての可能な部分を用キーname属性
戻り含むオブジェクトの配列:(3)getOwenPropertyNames()すべての(シンボル属性、属性を列挙含むがない含まない)属性
(4)getOwenSymbolNames():戻りオブジェクト自体を含む配列すべてのシンボルの属性
戻りオブジェクトを含む配列:(5)Reflect.ownKeys()全てのそれらの(非列挙特性及びシンボルを含む)属性
(6)Reflect.enumerate()戻り値:すべてのための...反復でプロパティ

ルールに従うことに6以上のトラバーサル順序の方法:
数値特性を名前(1)第越え属性、番号順にソートされ
た文字列、ソート列生成時間という名前のすべてのプロパティを介して(2)第2の
(3)最後に、すべてのプロパティという名前のシンボルの価値プロパティを通じて、ソートの世代時間に応じて
、オブジェクトのプロパティの所属判決:
自身列挙:hasOwnPrototyOf()
内:とその継承

6._proto_プロパティ

_proto_プロパティは読み取りまたは現在のオブジェクトのプロトタイプを設定するために使用されています。
オファーリンク:HTTPS://github.com/creeperyan ...

7.Iterator

8.Generator

:この記事はで再現されたAPE2048➧ https://www.mk2048.com/blog/blog.php?id=hacjcb2k1ab

おすすめ

転載: www.cnblogs.com/jlfw/p/12500836.html