2011-09-11 53 views
14

特别是,如果我有一些JSON:如何将JSON数据放入CoffeeScript中?

var myData = [ 'some info', 'some more info' ] 
var myOtherData = { someInfo: 'some more info' } 

什么是正确的语法CoffeeScript是什么?

+6

只是注意,你的JSON是完全错误的。没有属性名称,没有足够的引用符号,并且这看起来像Object notation中的wannabe数组。 – tjameson

+1

对,你必须决定'myData'是一个键值散列还是一个数组。无论您使用JSON,JavaScript还是CoffeeScript,“{}”表示“对象字面量”(一组键值对),“[]”表示“数组字面量”(有序列表)。 –

+0

为什么我得到一个downvote? – Shamoon

回答

40

如果你想创建如果你想创建一个对象,你可以使用myData = ['some info', 'some more info']

阵列可以使用myData = {someKey: 'some value'}

或者你可以只使用myData = someKey: 'some value'(即你可以ommit的{}

对于您使用可选{}和可选的逗号压痕更复杂的对象结构,例如

myData = 
    a: "a string" 
    b: 0 
    c: 
     d: [1,2,3] 
     e: ["another", "array"] 
    f: false 

将导致包含具有以下JSON表示的对象,(这也恰好是有效的CoffeeScript)变量myData的:

{ 
    "a": "a string", 
    "b": 0, 
    "c": { 
    "d": [1, 2, 3], 
    "e": ["another", "array"] 
    }, 
    "f": false 
} 
+10

良好的概述。只是为了澄清一下,将复制粘贴到CoffeeScript中时,几乎所有JSON或JavaScript对象/数组文字都可以正常工作。 –