ホームページ > 記事 > ウェブフロントエンド > es6でオブジェクトを走査する方法は何ですか
メソッド: 1. "Object.keys(obj)" を使用してオブジェクトを走査し、オブジェクト自体の列挙可能なすべてのプロパティを含むキー配列を返します。 2. "Reflect.ownKeys(obj)" を使用して走査します。 object は、オブジェクト自体のすべてのキー名を含む配列を返します; 3. オブジェクトなどをループするには、「for in」を使用します。
このチュートリアルの動作環境: Windows 10 システム、ECMAScript バージョン 6.0、Dell G3 コンピューター。
1. for…in
for…in ループは、オブジェクト自身の列挙型と継承された列挙型を走査します。プロパティ (シンボル プロパティを除く)。
2. Object.keys(obj)
Object.keys は、オブジェクト自体のすべての列挙可能なプロパティ (継承されたプロパティを除く) を含む配列を返します (キー名ではありません) Symbol 属性を含む)。
3. Object.getOwnPropertyNames(obj)
Object.getOwnPropertyNames は、オブジェクト自体のすべてのプロパティ (シンボル プロパティを除く、列挙不可能な属性を含む) を含む配列を返します。 ) キー名。
4. Object.getOwnPropertySymbols(obj)
Object.getOwnPropertySymbols は、オブジェクト自体のすべての Symbol プロパティのキー名を含む配列を返します。
5. Reflect.ownKeys(obj)
Reflect.ownKeys は、キー名がシンボルまたは文字列、列挙可能かどうかは関係ありません。
オブジェクトのキー名を走査する上記の 5 つのメソッドはすべて、属性走査の同じ順序規則に従います。
まず、すべての数値キーを調べて、値の昇順に並べ替えます。
2 番目に、すべての文字列キーを走査し、結合時間の昇順で並べ替えます。
最後に、すべてのシンボル キーをスキャンし、結合時間に従って昇順に並べます。
Reflect.ownKeys({ [Symbol()]:0, b:0, 10:0, 2:0, a:0 }) // [‘2′, ’10’, ‘b’, ‘a’, Symbol()]
[関連する推奨事項: JavaScript ビデオ チュートリアル 、Web フロントエンド ]
以上がes6でオブジェクトを走査する方法は何ですかの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。