ホームページ >ウェブフロントエンド >jsチュートリアル >ドット表記文字列を使用してネストされた JavaScript オブジェクトのプロパティにアクセスするにはどうすればよいですか?

ドット表記文字列を使用してネストされた JavaScript オブジェクトのプロパティにアクセスするにはどうすればよいですか?

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2024-11-21 14:54:13535ブラウズ

How Can I Access Nested JavaScript Object Properties Using Dot Notation Strings?

ドット表記文字列を使用したネストされたオブジェクト プロパティへのアクセス

複雑なオブジェクトを操作する場合、深くネストされたプロパティにアクセスするのは面倒なプロセスになる可能性があります。標準の JavaScript 構文では、プロパティ階層を手動で移動する必要があるため、面倒でエラーが発生しやすくなります。この問題により、このタスクを簡略化するための代替アプローチの模索が促されました。

求められている解決策の 1 つは、ドット表記文字列を使用してネストされたプロパティにアクセスする機能です。ただし、この機能は JavaScript ではネイティブにサポートされていません。この機能を可能にする単純な関数を次に示します。

function getDescendantProp(obj, desc) {
    var arr = desc.split(".");
    while (arr.length && (obj = obj[arr.shift()]));
    return obj;
}

この関数を使用すると、文字列を使用して深くネストされたプロパティにアクセスできます。

var r = { a: 1, b: { b1: 11, b2: 99 } };
console.log(getDescendantProp(r, "b.b2")); // 99

このアプローチも使用できることに注意してください。ドット表記文字列の一部として数値インデックスを指定して配列要素にアクセスするには:

getDescendantProp({ a: [1, 2, 3] }, 'a.2'); // 3

以上がドット表記文字列を使用してネストされた JavaScript オブジェクトのプロパティにアクセスするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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