次の JS 教科書の例を Livescript に変換しようとしています。
function cf(){
var result = new Array();
for (var i=0; i < 10; i++) {
result[i] = function(num){
return function(){
return num;
};
}(i);
}
return result;
}
console.log( cf()[2]() );
私の試みはこれです:
cf = ->
res=[]
for i in [ 0 til 10 ]
f = (num) ->
->
num
res[i] = f(i)
res
console.log cf! . [3]!
しかし、lsc は最後の行で失敗しました。
この Livescript 出力を提供するhttp://js2ls.org/public/を試しました (最初の JavaScript フラグメントから):
cf = ->
result = new Array
i = 0
while i < 10
result[i] = (num) -> -> num
i
i++
result
console.log cf!.2!
これは正しくありません。
JavaScriptフラグメントはLivescriptでどのようにコーディングする必要がありますか?