我正在将一个小脚本从 coco 迁移到 LiveScript:
D = (obj, l = 20) ->
if (l > 0)
new
@[k] = (try D(v, l - 1) catch (e) e) for k, v in obj
else
obj
此代码在 coco 中有效,但在 LiveScript 中无法编译:
第 4 行的解析错误:意外的“FOR”
我试图通过以下方式修改该代码(对于 LiveScript):
D = (obj, l = 20) ->
if (l > 0)
new
for k, v of obj
@[k] = (try D(v, l - 1) catch (e) e)
else
obj
但它仍然无法编译:
第 5 行的无效分配
如何将此 coco 脚本重写为 LiveScript?(不是以纯 JavaScript 方式——不使用临时变量。)