拡張ES6配列
- 拡張演算子
拡張オペレータがイテレータインターフェースを有する被験体である、オペレータは、拡張を使用することができ
- Array.from()
(限り、配列に変換することができるデータの長さ属性が存在するように)2(反復処理可能)オブジェクトを通過することができ、アレイ状オブジェクト1.実配列へのオブジェクトの2種類の
- Array.of()
配列に値のセット
- 見つけるとfindIndex
-1を返しfindIndexを見つけている,?を見つけていない場合、私は、findIndex方法は、最初に一致するメンバー?位置を返し、リターンがundefiend見つけることができませんでした、最初の予選アレイメンバーを見つけるための方法を見つけます2番目のパラメータが許容され、このコールバック関数をバインドします
- フィルのアレイの例()
与えられた値、充填された配列を使用して充填します。開始位置と終了位置を指定する第二及び第三のパラメータを受信し、配列を初期化するために使用される値
- 配列エントリの方法の例()キー()と値()
これらの3つの方法は、訪問者のオブジェクトを返します、あなたはサイクルfor..of使用することができ、配列を横断するために使用し、新たな道を?提供?トラバーサルキーのトラバーサルは、キー名、値がされているキートラバーサルエントリされていますトラバーサルキーと値のペア
- これは)(インスタンスのアレイを含みます
これは、配列が指定された値を保持表し真、そうでない場合はfalseを返します。
Objectオブジェクトの新しい方法
- プロパティの簡潔な表現
ES6直接書込み関数と変数を許可し、ほとんどのオブジェクトのプロパティおよび方法が主に使用されている:1.関数は、値、3セッターとゲッター特性を導出2. module.exportsはを返します
OBJ = {VARの FOO、//プロパティ メソッド(){//メソッド } }
- トラバーサルプロパティ
ES6方法は、オブジェクトの5つの属性の合計を横断することができ
- このfor..in:(プロパティシンボルを除く)ループ継承を通って、オブジェクト自身列挙変数
- Object.keysは(OBJ):すべて列挙オブジェクト自体のキー属性名を含む配列を返します。
- Object.getOwnPropertyNames(OBJ):すべてのオブジェクトの独自のプロパティキー名を含む配列を返します。
- Object.getOwnPropertySymbols(OBJ):キー名自体のシンボルのすべての属性を含む配列を返します。
- Reflect.ownKeys():オブジェクト自体すべてのキーの名前を含む配列を返しかかわらず、キー名の記号または文字列であり、列挙可能か否かを判定する
- superキーワード
このキーワードでJSが常に存在する現在のオブジェクト関数を指し、ES6は、現在のオブジェクトのプロトタイプオブジェクトを指し、別の類似キーワードsuperを加え、スーパーのみメソッドオブジェクトで使用することができ、この方法は、簡略性であります
{プロト=一定 のfoo: 'こんにちは' } のconst {OBJ = FOO: '世界'は、 (検索){ OBJのプロトタイプsuper.foo // fooのアクセス属性のリターンの特性 } } Object.setPrototypeOf(OBJ、プロト)//プロトタイププロトのOBJセット obj.find()//「こんにちは」
- オブジェクトの新しいメソッド
2つの値を比較するために使用されるアルゴリズムに等しい値に正確に等しいです
Object.is('foo', 'foo') // true Object.is({}, {}) // false
- Object.assign(ターゲット、ソース)
ターゲットオブジェクトにコピーされた結合オブジェクト、すべての列挙プロパティの元のオブジェクト、
- 一般的な用途
- オブジェクトにプロパティを追加します。
点{クラス コンストラクタ(X、Y){ Object.assign(この、{X、Y})//クラス点のオブジェクトインスタンスの属性x、yを追加します } }
- オブジェクトとしてメソッドを追加します。
Object.assign(SomeClass.prototype、{//オブジェクトプロトタイプ法追加 のsomeMethod(ARG1、ARG2)を{} antherMethod(){} })
- オブジェクトのクローン作成
関数クローン(原点){ Object.assign({}、原点)を返す } 関数クローン(原点){ originProto = Object.getPrototypeOf(原点)とします。 Object.assign(Object.create(originProto)、起源)を返します。 }
- 複数のオブジェクトをマージ
const merge = (target, ...sources) => Object.assign(target, ...sources)
- __proto__属性、Object.setPrototypeOf()Object.getPrototypeOf()
JS言語オブジェクトはプロトタイプ継承チェーンによって達成される、ES6プロトタイプは、追加方法__proto__鎖特性を提供し、Object.getPrototypeOfは()プロトタイププロトタイププロパティObject.setPrototypeOf提供(OBJ、プロト)、Object.create()プロトタイプを取得しますプロパティ
- Object.keys()Object.Values()Object.entries()
オブジェクトのプロパティの配列を返します