ノードとリンクで構成される 1 つのオブジェクトを持つ JSON 配列があります。
data = [Object]=[ { nodes: Array[..] ,links: Array[…] } ]
これで問題ありませんが、たとえばリンクにアクセスするには data[0].links を使用する必要があり、これは少し面倒です。data.links がリンクにアクセスできるように、配列をオブジェクトにしたいと思います。私は設定しようとしました:
data = data[0];
しかし、その後、オブジェクトの配列である data.links は「未定義」として表示されます。たとえば、特定の要素にアクセスすると、値が表示されるようdata.links[3].name
です。何故ですか?
編集:
すなわち:
if data = [ { ノード: 配列[...] ,リンク: 配列[...] } ] =>
console.log(data[0].links); //shows the data[0].links[0].name = value in the console
if data = { ノード: 配列[...] ,リンク: 配列[...] } =>
console.log(data.links); //shows data[0].links[0].name = undefined
しかし興味深いことに
console.log(data.links[0].name); //shows the correct value.