• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:javascriptでjsonの解析で困っています)

javascriptでjsonの解析で困っています

このQ&Aのポイント
  • javascriptのjsonの解析で困っている初心者です。以下の要素ccと33を取得する方法について教えてください。
  • jsonのデータの構造が間違っており、ccと33を取得する際にエラーが発生しています。具体的な解決策を教えてください。
  • jsonのデータを正しく解析するためには、we[0][2][0]とwe[0][2][1]を使用すればccと33を取得できます。詳しい解説をお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • Ogre7077
  • ベストアンサー率65% (170/258)
回答No.2

No.1 の補足について > 値が代入されませんでした。 スクリプトは特に問題はありません。 実際のJSONデータですが、もしかして全角スペースが混入されていませんか? ブラウザの開発者ツールなどで、エラー内容をご確認ください。 http://www.htmlhifive.com/conts/web/view/study-room/devtool-whatis

dkong
質問者

お礼

ありがとうございました。スペースや改行を全部なくしたらうまくいきました。全角スペースが入らないように改行をいれてもうまくいきました。

その他の回答 (1)

  • Ogre7077
  • ベストアンサー率65% (170/258)
回答No.1

JavaScript は数字の前に特殊な文字を付けることで、10進数以外の数を書くことが出来ます。 0 を付ければ 8進数 0x を付ければ 16進数 ということで 00 は 8進数で表記した 0 とみなされます。 JSON は JavaScript の表記を基にしていますが、 数字は 10進数でのみ表記できると制限をかけているので、 頭に 0 とか 0x とかを付けた数字を一律エラーとしてしまいます。 参考) RFC 4627 2.4. Numbers というわけで、 誤) ["ff",66],["gg",77],["hh",88],["ii",99],["jj",00] 正) ["ff",66],["gg",77],["hh",88],["ii",99],["jj",0]

dkong
質問者

補足

10進数以外のことを知りませんでした。00を0に直してやってみたのですが、値が代入されませんでした。javascriptの記述はこれで大丈夫でしょうか?

関連するQ&A