タグ: オブジェクト

検索結果: 2件

article-thumbnail

JavaScriptでオブジェクトのプロパティ確認

【概要】if文等で以下のようなエラーが出力された場合の対処法についてまとめます。js Cannot read property 'プロパティ名' of null【詳細】[概要]以下のようなオブジェクトを例とします。let user { id: 1, name: 'hoge', test: { id: 1, name:'test' }};下記のようにuserオブジェクトに存在しないmailプロパティを取得しようとするとエラーになります。・プロパティ取得例let mail user.mail;・エラー内容js Cannot read property 'mail' of nullエラーを回避する為には事前にオブジェクトの定義を確認する必要があります。[対応]・特定プロパティが存在するか確認するif ('mail' in user) { let mail user.mail;}・オブジェクトが定義されているか確認するif文にオブジェクトを記述します。オブジェクトが定義されていればidを取得する処理を記述するとします。ただ、これはuserオブジェクトが定義されている場合、必ずidプロパティが存在する事を前提とします。if (user) { let id user.id;}上記のように状況に合わせた対応をしてみて下さい。

カテゴリ: JS 2021-01-11 19:14:12
article-thumbnail

JavaScriptの連想配列の比較と抽出方法

【概要】JavaScriptの連想配列の比較と抽出方法についてまとめます。【詳細】・前提以下のようなobj1とobj2というオブジェクトがあるとします。obj2に存在しない配列のみをobj1から抽出します。抽出データ用にobj1のコピーをobj3に格納します。※ 「let obj3 obj1;」とすると、obj3の内容を変更した際にobj1にも影響する為、JSONのメソッドを使用してコピーを作成する必要があります。let obj1 [ { id: 1, name: 'hoge' }, { id: 2, name: 'fuga' }, { id: 3, name: 'hogehoge' }, { id: 4, name: 'fugafuga' }, { id: 5, name: 'hogefuga' }];let obj2 [ { id: 1, name: 'hoge' }, { id: 3, name: 'hogehoge' }, { id: 5, name: 'hogefuga' }];let obj3 JSON.parse(JSON.stringify(obj1));・抽出方法for (let o2 of obj2) { let index obj3.findIndex(({name}) name o2.name); obj3.splice(index, 1);}・抽出方法詳細obj2をループさせます。obj2に存在する値がobj3に存在した場合、obj3から対象の配列を削除します。これにより、obj2に存在しない値のみを所有した連想配列が作成されます。

カテゴリ: JS 2020-10-21 23:01:05