8 of 17 menu

JavaScriptでのオブジェクト要素取得エラー

あるオブジェクトがあるとします:

let obj = { a: 1, b: 2, c: 3, d: 4, e: 5, };

このオブジェクトから、特定のキーによって要素を取得したいとします。 そのキーの名前は、ユーザーが入力フィールドに入力するとします:

console.log(input.value);

一部の初心者プログラマーは次のような間違いを犯します: オブジェクトをループで走査し、キーを入力値と順番に比較するのです。 以下のように:

for (let key in obj) { if (key === input.value) { let elem = obj[key]; console.log(elem); // 求めている値 break; } }

しかし、このタスクにおいてループは完全に余計です。 なぜなら、キーを使って単純に値を取得できるからです。 次のように:

let elem = obj[input.value];

必要に応じて、そのようなキーがオブジェクトに存在するか チェックを追加することもできます:

if (obj[input.value] !== undefined) { let elem = obj[input.value]; console.log(elem); } else { console.log('オブジェクトにそのようなキーはありません'); }
日本語
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItalianoქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
当サイトでは、サイトの動作、分析、パーソナライゼーションのためにクッキーを使用しています。 データ処理はプライバシーポリシーに従って行われます。
すべて受け入れる 設定 拒否