我试图在coffeescript中编写跟随js代码
var test = (function(test) {
test.s = function(){
console.log('hello')
}
return test;
}(test || {}));
test.s();
我使用js2coffee。我得到了什么
test = ((test) ->
test.s = ->
console.log "hello"
return
test
(test or {}))
test.s()
但是这段代码不起作用/当我在js中生成这个coffeescript时,我得到了另一个js代码
var test;
test = (function(test) {
test.s = function() {
console.log("hello");
};
return test;
}, test || {}); // this line is different
test.s();
你能救我吗?如何正确写入coffeescript我的js脚本
答案 0 :(得分:1)
这就是你想要的:
test = do (test=test or {}) ->
test.s = ->
console.log 'hello'
test
输出:
var test;
test = (function(test) {
test.s = function() {
return console.log('hello');
};
return test;
})(test || {});
答案 1 :(得分:0)
这与elclanrs do
版本的编译方式相同,并且可能有助于澄清coffee2js是否错误
test = ((test) ->
test.s = ->
console.log "hello"
test) (test or {})