在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"}
。
这可能吗?如何确保对象键接受动态值。
答案 0 :(得分:3)
更改
… { return {key : value}; }
到
… { var o={}; o[key]=value; return o; }