2012-06-19 49 views
1

我目前在一些項目的演示數據中硬編碼。代碼看起來是這樣的:從JSON走向生成的CoffeeScript

update:() => 
    t = getTime() 
    if t == undefined 
     zone = -1 
    else if between(t, 100, 110) 
     zone = 1 
    else if between(t, 111, 120) 
     zone = 2 

現在,下一個步驟是採取以下形式的JSON數組:

[{"start": 100, "end": 110, "zone": 1}, {"start": 111, "end": 120,"zone": 2}] 

使上述生成的代碼。這可能嗎?做這件事的最好方法是什麼?

+0

我不明白這個問題。你想要執行'update'方法做些什麼,但是使用來自JSON字符串的動態值,還是從此JSON中生成上面的CoffeeScript代碼? – epidemian

回答

1
fs = require 'fs' 

json = fs.readFileSync 'PUT_FILENAME_HERE', 'utf-8' 
data = JSON.parse json 

for zoneData in data 
    if between(t, zoneData.start, zoneData.end) 
    zone = zoneData.zone 
    break