我正在使用UglifyJs缩小代码并且我遇到了问题。如果我将自执行函数作为对象文字的属性,那么在缩小时它会缩减为函数。
即
var o = {
c : 1,
t : (function(){
return 'this worked';
}())
};
uglifyjs t.js > u.js
var o={c:1,t:function(){return"this worked"}()};
据推测,不建议采用这种做事方式。这是什么/为什么?如果有一个解决方法,我很想知道,因为客户端代码宁愿使用属性。
感谢。
答案 0 :(得分:1)
它返回了相同的自执行功能而没有周围的括号...所以我没有看到问题...
注意,JSON不支持在其内容中声明的函数。你可以使用它,因为它仍然是javascript代码,但你无法序列化......等等。