自执行函数作为对象文字的属性
Self Executing functions as properties of object literals
我正在使用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代码,但你不能序列化它......等。
相关文章:
- 如何在只接受字符串值/文字的HTML属性中调用函数
- 可以使用“;创建“;作为JavaScript对象文字中的属性名称
- 为什么可以'我们在函数体中为函数对象添加属性,就像在javascript中为对象文字添加属性一样
- 错误:JSON分析错误:使用角度转换时,属性名称必须是字符串文字
- 从C#中获取JS中对象文字的属性
- 在IE 7中,如果链接是使用jQuery创建的,如何获取链接的href属性的文字值
- 自执行函数作为对象文字的属性
- 是否可以在 javascript 中的对象文字上定义函数属性
- 如何重现正确的JavaScript对象文字属性,该属性是CoffeeScript中的匿名函数
- 在 javascript 中指定对象文字内属性的不同方法
- 将文字对象转换为对象'的属性
- 如何在不位于javascript函数内部的情况下使用对象文字的属性
- 如何从另一个属性访问对象文字属性
- 对象文字属性值与“this”不兼容
- 如何将函数参数值连接到对象文字属性名称中
- 创建函数的函数属性,而函数属性又是对象文字的方法
- 从回调(异步方法)内部访问对象文字属性
- 对象文字属性和方法位置
- 引用类/实例而不是对象文字属性的正确方式
- 动态初始化javascript对象的文字属性