ホームページ  >  記事  >  ウェブフロントエンド  >  es6 でオブジェクトをトラバースする方法はありますか?

es6 でオブジェクトをトラバースする方法はありますか?

青灯夜游
青灯夜游オリジナル
2022-10-25 19:09:191539ブラウズ

######持っている。走査方法: 1. "for...in" ステートメント、オブジェクト自身および継承された列挙可能なプロパティを走査します。 2. Object.keys()、プロパティ名を走査します。 3. Object.getOwnPropertyNames()、走査するプロパティ名を走査します。 ; 4. Object.getOwnPropertySymbols()、すべての Symbol プロパティを走査; 5. Reflect.ownKeys()、すべてのプロパティを走査します。

es6 でオブジェクトをトラバースする方法はありますか?このチュートリアルの動作環境: Windows 7 システム、ECMAScript バージョン 6、Dell G3 コンピューター。

es6 オブジェクトをトラバースする 6 つの方法

(1) for...in

for. . .in

オブジェクト自身および継承された列挙可能なプロパティ (シンボル プロパティを除く) をループします。 <pre class="brush:js;toolbar:false">const obj = { id:1, name:‘zhangsan’, age:18 } for(let key in obj){ console.log(key + ‘—’ + obj[key]) }</pre>

es6 でオブジェクトをトラバースする方法はありますか?

(2)Object.keys(obj)


Object.keys

Returnオブジェクト自体のすべての列挙可能なプロパティ (Symbol プロパティを除く) (継承されたプロパティを除く) のキーを含む配列。

es6 でオブジェクトをトラバースする方法はありますか?

(3) Object.getOwnPropertyNames(obj)

Object.getOwnPropertyNames

を含む配列を返します。オブジェクト自体のすべてのプロパティのキー名 (シンボル プロパティを除く、列挙不可能なプロパティも含む)。

es6 でオブジェクトをトラバースする方法はありますか?

(4) Object.getOwnPropertySymbols(obj)

Object.getOwnPropertySymbols

Key を含む配列を返します。オブジェクト自体のすべての Symbol プロパティの名前。

es6 でオブジェクトをトラバースする方法はありますか?

(5) Reflect.ownKeys(obj)

Reflect.ownKeys

すべてを含む配列を返しますオブジェクト自体のキー名 (継承されたものを除く)。キー名がシンボルか文字列か、また列挙可能かどうかは関係ありません。

es6 でオブジェクトをトラバースする方法はありますか?上記の 5 つのメソッドは、オブジェクトのキー名を走査し、すべて属性走査の同じ順序規則に従います。

まず、すべての数値キーを調べて、値の昇順に並べます。
  • 2 番目に、すべての文字列キーを走査し、結合時間の昇順で並べ替えます。
  • 最後に、すべてのシンボル キーを走査し、結合時間に従って昇順に並べ替えます。
(5) Reflect.enumerate(obj)

Reflect.enumerate(obj)、Iterator オブジェクトを返し、オブジェクト自体 継承されたすべての列挙可能なプロパティ (Symbol プロパティを除く) は、for...in ループと同じです。

【関連する推奨事項:

JavaScript ビデオ チュートリアル

プログラミング ビデオ

以上がes6 でオブジェクトをトラバースする方法はありますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。