我想要實現使用中的CoffeeScript自執行的匿名函數命名空間:使用在自執行匿名函數未定義
How do I declare a namespace in JavaScript?
http://enterprisejquery.com/2010/10/how-good-c-habits-can-encourage-bad-javascript-habits-part-1/
我想也保護「未定義」從被重新定義,因爲這是文章的建議。因此,在CoffeeScript中
,我可以這樣做:
((skillet, $) ->
skillet.fry ->
alert('hi');
)(window.skillet = window.skillet || {}, jQuery);
和親近的文章中描述的格式:
(function(skillet, $) {
return skillet.fry(function() {
return alert('hi');
});
})(window.skillet = window.skillet || {}, jQuery);
但是當我嘗試添加在不確定的..由於嚴格模式導致編譯錯誤:
http://arcturo.github.com/library/coffeescript/07_the_bad_parts.html
「某些變量,如undefined不再可寫」
我想知道是否有解決此問題的方法?我想保持嚴格的模式,因爲使用它可能有好處,我沒有完全意識到。但即使谷歌搜索的方式來關閉它...我想出了零。
謝謝你看!
一般情況下,我我們從未遇到過未定義的問題 - 任何代碼都不夠好用,而且通過使用嚴格模式,您可以確保自己的代碼也是安全的。我不會爲此擔心! – 2012-07-25 22:23:05