如何从CoffeeScript中的JSON中获取数据?

时间:2012-12-23 10:09:54

标签: json coffeescript

  

可能重复:
  How to extract specific data from JSON using CoffeeScript?

我想从大量的JSON字符串中获取特定的数据。如果在此处发布,整个字符串将超过10页,所以我只是包含一个示例代码段:

   { name: '',
     keys:
      [ 'statType',
        'count',
        'dataVersion',
        'value',
        'championId',
        'futureData' ],
     object:
      { statType: 'TOTAL_SESSIONS_PLAYED',
        count: { value: 5 },
        dataVersion: 0,
        value: { value: 5 },
        championId: { value: 31 },
        futureData: null },
     encoding: 0 }

如何使用CoffeeScript:

  1. 解析该字符串以找到具有特定值的对象,例如TOTAL_SESSIONS_PLAYED
  2. 从该对象(value字段)和
  3. 获取数值 理想情况下,
  4. 将该值附加到外部文本文件中?
  5. 我几乎是一个超级noob程序员。基本上,在此示例中,我如何从标记为5的对象中获取TOTAL_SESSIONS_PLAYED值,并使用CoffeeScript将其附加到文本文件中?

1 个答案:

答案 0 :(得分:17)

无论您是在browser还是Node中执行此操作,都应该能够将JSON字符串传递给JSON.parse并选择所需的值。然后,您可以使用Node的fs模块附加到文件,如下所示:https://stackoverflow.com/a/11267583/659910

fs = require 'fs'

# Sample JSON string.
json = '{ "statType": "TOTAL_SESSIONS_PLAYED", "count": { "value": 5 }, "dataVersion": 0 }'

data = JSON.parse(json)
fs.appendFile('/tmp/data.txt', data.count.value, (error) -> throw error if error)