是否可以在 javascript 中的对象文字上定义函数属性
Is it possible to define a function property on an object literal in javascript?
我有以下代码,我想在对象文字(动作(中直接定义函数(第一个(上的属性(服务器(。
var actions = {
first: function(){
console.log("First")
},
second: function(){
console.log("Second")
},
};
actions.first.server = "server_1";
在
有疑问时使用函数,或者在任何时候你想使用需要变量的复杂结构:
var actions = {
first: (function(){
function first(){
console.log("First")
};
first.server="server_1";
return first;
}()),
second: function(){
console.log("Second")
}
};
FunctionDecorator
将函数作为上下文传递给类/装饰器 - 或 - 故意添加属性:
function FunctionDecorator(server) { this.server = server; return this; }
var object = {
first: FunctionDecorator.call(function first() {}, 'server_1')
};
--或--
var object = {
first: function first() { first.server = first.server || getServer(); }
};
但是,我会说您可以在一些 OOP 上做更多工作,因为这有点笨拙,除非您想要可调用的对象(使用 decorator 方法(。例如,AngularJS有一个$http
模块,可以像$http({...})
或$http.get(...)
一样使用——这是因为它是一个装饰函数。
干杯
相关文章:
- 激活chrome上的chrome.notifications对象
- 如何在选项卡上定义属性'的主窗口对象
- 对象文字方法上的Javascript绑定不起作用
- 更改屏幕上对象的宽度调整大小
- Javascript 对象文字在对象文字中
- 咖啡脚本:当我尝试创建对象文字的对象文字时,意外的“{”
- 在对象文字上调用函数,由字符串 - JavaScript 表示
- Javascript :使用文字创建对象
- 如何在 coffeescript 中编写文字 jQuery 对象
- 是否可以在 javascript 中的对象文字上定义函数属性
- 如何从字符串形式的对象文字创建对象
- 在对象文字上调用eval的Javascript(带函数)
- 使用对象文字更新标记上的图标
- 如何用条件给暗镜中的文字上色
- 在多大深度上,对对象文字的搜索变得比O(1)慢
- 用对象文字的对象属性填充数组
- 在html属性中存储非文字js对象
- javascript中常量(理想情况下是文字)圆形对象的表示
- 奇怪的行为和使用Object的多个实例.在文字对象上创建
- 画布上对象的多个实例