JavaScript
 Computer >> コンピューター >  >> プログラミング >> JavaScript

【JavaScript入門】オブジェクトから必要なプロパティだけを抽出する方法

JavaScriptでは、オブジェクトの一部のプロパティだけを取り出して、新しいオブジェクトを作成したい場面がよくあります。そんなときに便利なのが、分割代入(destructuring)プロパティのショートハンド記法を組み合わせる方法です。

基本的な例

例えば、次のようなオブジェクトがあるとします。

const person = {
    name: 'John',
    age: 40,
    city: 'LA',
    school: 'High School'
}

この中から nameage の2つだけを取り出したい場合は、以下のように記述します。

const { name, age } = person;
const selectedObj = { name, age };
console.log(selectedObj);

コードの解説

最初の行 const { name, age } = person; では、分割代入を使って person オブジェクトから nameage をそれぞれ別の変数として取り出しています。続く { name, age } の部分は、変数名とプロパティ名が一致している場合に省略できるショートハンド記法です。これにより、簡潔なコードで新しいオブジェクトを生成できます。

出力結果

このコードを実行すると、コンソールには次のように表示されます。

{
    name: 'John',
    age: 40
}

応用:キーを動的に指定して抽出する

取り出したいプロパティが実行時まで確定しない場合は、次のようなユーティリティ関数 pick を用意しておくと便利です。

function pick(obj, keys) {
    return keys.reduce((result, key) => {
        if (key in obj) result[key] = obj[key];
        return result;
    }, {});
}

const selected = pick(person, ['name', 'age']);
console.log(selected); // { name: 'John', age: 40 }

このように、分割代入によるシンプルな方法と、柔軟性の高い関数アプローチを使い分けることで、さまざまなケースに対応できます。なお、分割代入とショートハンド記法はES2015以降で利用可能な機能です。

  1. JavaScriptオブジェクトのプロパティの追加・アクセス・削除方法を徹底解説

    JavaScriptでは、オブジェクトのプロパティに対して追加・アクセス・削除といった操作を簡単に行うことができます。本記事では、それぞれの操作方法をサンプルコードとともにわかりやすく解説します。 JavaScriptオブジェクトのプロパティ操作の基本 JavaScriptオブジェクトのプロパティは、主に以下の方法で操作します。 プロパティの追加: ドット記法(obj.プロパティ名 = 値;)またはブラケット記法(obj[プロパティ名] = 値;)を使用します。存在しないプロパティに値を代入すると、自動的に新しいプロパティが作成されます。 プロパティへのアクセス: ドット記法(obj.プロパ

  2. JavaScriptでプロパティにアクセスする3つの方法|ドット記法・角括弧・分割代入の使い分け

    JavaScriptでオブジェクトのプロパティにアクセスする3つの方法 JavaScriptには、オブジェクトが持つプロパティ(キーと値のペア)を参照するための方法が主に3つあります。どれも同じ値を取得できますが、それぞれ特徴や向いている場面が異なるため、正しく使い分けられるとコードの可読性と保守性が大きく向上します。 ドット記法:object.property 角括弧記法:object[property] 分割代入:let {property} = object 1. ドット記法(object.property) 最もシンプルで読みやすい記法です。obj.a のようにピリオドでつなぐだけ