返回键,具有动态键名称的值对象

时间:2014-02-05 16:46:25

标签: javascript peg pegjs

在PEG.js中我有以下规则

label  = l:[a-zA-Z\$\#\% ]*  { return word(l); } 
block  = "[" l:label "]" { return l; }
option = "\n"* key:block value:label "\n"? {return {key : value}; } 

如果它解析[hello] world,则会导致:

{"key": "world"}

我希望它返回

{"hello": "world"}

这可能吗?如何确保对象键接受动态值。

1 个答案:

答案 0 :(得分:3)

更改

… { return {key : value}; }

… { var o={}; o[key]=value; return o; }