ホームページ  >  記事  >  ウェブフロントエンド  >  JavaScript のプロパティ列挙メソッドとは何ですか?

JavaScript のプロパティ列挙メソッドとは何ですか?

不言
不言オリジナル
2019-01-15 14:37:093348ブラウズ

この記事では、属性を列挙するメソッドを見てみましょう。この記事では、主に forEach()、map()、および filter() メソッドの使用方法を学びます。具体的な内容。

JavaScript のプロパティ列挙メソッドとは何ですか?

前の記事でオブジェクトのプロパティを取得するための JavaScript のプロパティ列挙メソッドとは何ですか? の Object.keys メソッドを紹介しました。次に見てみましょう。 JavaScript のプロパティ列挙メソッドとは何ですか? でプロパティを列挙します。

最初に共通のオブジェクト データを見てみましょう

var obj = {
  name: '张 三',  
  age: 30,  
  area: '北京'
}
forEach() を通じてプロパティを列挙します

forEach() は配列に使用できるメソッドですが、 Object.keys ()の戻り値は配列なので互換性は非常に良いです。

プロパティを列挙するには、次の説明を参照してください。

Object.keys(obj).forEach(function(data) {
  console.log(data);
})

実行結果

name
age
area

関数をforEach()のパラメータとして定義していることに注意してください。

この記述により、各属性に対して任意の関数を実行できます。

ちなみに、「obj [data]」のような形式で属性の値を出力することもできます。

map()によるプロパティの列挙

基本的な使い方はforEach()と同じですが、配列の戻り値としてプロパティを取得する関数です。

以下の例をご覧ください。

var result = Object.keys(obj).map(function(data) {
    return data;
})

実行結果

["name", "age", "area"]

map()パラメータに指定した関数の内容に注意してください。

filter() によるプロパティの列挙

filter() と map() の使用法はほぼ同じです。

以下の例を参照してください

var result = Object.keys(obj).filter(function(data) {
    return data;
})

実行結果

["name", "age", "area"]

この例では、map() の部分を filter() に置き換えただけですが、実行結果は結果は同じです。

filter()の特徴は、特定の条件を満たした場合にのみ値を取得する処理を記述できることです。

たとえば、「return data ==='name'」は、属性に「name」がある場合にのみ値を返します。

filter()を使えば、例えば30歳以上のユーザーだけを抽出することも簡単です。

以上がJavaScript のプロパティ列挙メソッドとは何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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