我正在使用 UglifyJs 缩小一些代码,但遇到了问题。如果我有一个自执行函数作为对象文字的属性,则在缩小时它会简化为函数。
即
var o = {
c : 1,
t : (function(){
return 'this worked';
}())
};
uglifyjs t.js > u.js
var o={c:1,t:function(){return"this worked"}()};
不推荐这种做法大概是有原因的。这是什么/为什么?另外,如果有解决办法,我很想知道,因为客户端代码更愿意使用属性。
谢谢。
最佳答案
它返回了相同的自执行函数,没有括号...所以我没有看到问题...
请注意,JSON 不支持在其内容中声明的函数。你可以使用它,因为它仍然是 javascript 代码,但你不能序列化它......等等。
关于javascript - 作为对象文字属性的自执行函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19292273/