2016-03-01 97 views
-1

我已经做了一些研究,但对于JSON文件的正确格式仍然有点困惑。我的文件是创建一系列具有相应特征的Note对象,但我不确定我是否已经正确格式化了它,以便我可以用另一种语言解析它。什么是JSON文件的正确格式?我有什么不同?

var notes = { "A":  {"octave": 0, "freq": 27.50}, 
       "A#/Bb": {"octave": 0, "freq": 29.14}, 
       "B":  {"octave": 0, "freq": 30.87}, 

       "C":  {"octave": 1, "freq": 32.70}, 
       "C#/Db": {"octave": 1, "freq": 34.65}, 
       "D":  {"octave": 1, "freq": 36.71}, 
       "D#/Eb": {"octave": 1, "freq": 38.89}, 
       "E":  {"octave": 1, "freq": 41.20}, 
       "F":  {"octave": 1, "freq": 43.65}, 
       "F#/Gb": {"octave": 1, "freq": 46.25}, 
       "G":  {"octave": 1, "freq": 49.00}, 
       "G#/Ab": {"octave": 1, "freq": 51.91} 
      } 
+0

这是一个猜测(这就是为什么我没有张贴作为一个答案):摆脱'VAR笔记='和只是存储对象。 –

回答

0

总的来说,你的问题对我来说有点不清楚。但如果我理解正确...

您可以使用一些验证程序,如jsonlint.com(如果您运行谷歌搜索,有大量的在线和离线),您可以验证您的json数据。验证者有时会对检查的限制程度有所不同。如果你使用了我已经放入链接,你会或多或少地确定它可以用不同的语言处理。

例如:

有些解析器将接受

{ 
    'AB': 'some value' 
} 

,但有些人会抱怨单引号'。所以为了安全起见,请使用双引号。

有些解析器接受最后一个数组或列表元素后面的逗号,其他解析器会抱怨。

错误:

{ 
    "CCC": [ 
    "AAAA", 
    "BBBB", 
    ] 
} 

正确:

{ 
    "CCC": [ 
    "AAAA", 
    "BBBB" 
    ] 
} 
相关问题