質問: 'テスト5_2' console.log(obj.test5) //test5=テスト5{test5_1=テスト5_1,test5_2=テスト5_2} ``` `テスト5`の値をもたせつつ`テスト5`のプロパティに値を追加するのは難しいのでしょうか?
回答: 多分やりたいのは以下かなぁ。test4と同じ構造にしたい? ``` obj['test5'] = {'test5_1':'テスト5_1'} ``` 元コードを分解してみると・・・ ``` // 元コード obj['test5'['test5_1']] = 'テスト5_1' // 分解 const TMP = 'test5'['test5_1'] obj[TMP] = 'テスト5_1' ``` となります。`TMP`のところは、「`'test5'`という文字列のオブジェクト(リテラル)の`テスト5_1`プロパティ」になるんですが、そんなものはないっつーことで`undefined`になっちゃいます。 そうすると`obj[undefined] = 'テスト5_1'`ってなります。Chromeだとこの時のundefinedが文字列に変換されますね。 だから元のあなたの'test5_1'は`obj["undefined"]`のなかに行っちゃってます。 答えになってるかな・・・