如何定义一个变量,我的对象中的所有函数都可以访问该变量
How to define a variable which can be accessed by all my functions in my object?
我有一个这样的对象:
myobj={
//where to define Car car=new Car();
test:{
testFunc1(){car.paintTest();},
testFunc2(){car.drawTest();}
},
use:{
useFunc1(){car.paintUse();},
useFunc2(){car.drawUse();}
},
};
我使用myobj
的方式是,在另一个js文件中,我可以很容易地调用
myobj.test.testFunc2();
或
myobj.use.useFunc1();
正如您所注意到的,在myobj
中,我有一个car
实例经常被用于不同子对象中的不同函数(例如"test"、"use"子对象(。
我想知道,在myobj
中,我在哪里可以定义Car car=new Car();
,以便car
被定义一次,并且可以在myobj
中的几个函数中使用。
您可以这样做:
myobj={
car: new Car(),
test: {
var self = this;
testFunc1(){self.car.paintTest();},
testFunc2(){self.car.drawTest();}
},
use: {
var self = this;
useFunc1(){self.car.paintUse();},
useFunc2(){self.car.drawUse();}
},
};
更新
使用伪Car
对象的工作版本:
function Car (){
this.paintTest = function(){console.log('painttest')}
this.drawTest = function(){console.log('drawtest')}
this.paintUse = function(){console.log('paintuse')}
this.drawUse = function(){console.log('drawuse')}
}
myobj = {
car: new Car(),
test:{
testFunc1: function() {myobj.car.paintTest();},
testFunc2: function() {myobj.car.drawTest();}
},
use: {
useFunc1: function(){myobj.car.paintUse();},
useFunc2: function(){myobj.car.drawUse();}
},
};
myobj.test.testFunc1();
myobj.test.testFunc2();
myobj.use.useFunc1();
myobj.use.useFunc2();
小提琴:http://jsfiddle.net/maniator/KcQvL/
相关文章:
- 任何一种简单的方法都可以将带有onload的元素作为目标
- 如何在Javascript中创建一个所有用户都可以访问的变量
- 为了避免创建全局变量,可以将所有变量分配给一个对象吗
- 响应式图片库,每个图片都可以通过锚链接访问
- 如何使整个列表项都可以点击
- 当对象中的所有变量都为false时,AngularJs禁用按钮
- 任何人都可以帮助我如何在客户端加载XML,该XML在服务器上,我需要对文件进行更改
- 我需要将这两个函数从javascript更改为JQuery,任何人都可以告诉我如何转换
- 在哪里放置JavaScript警报覆盖,以便所有页面都可以使用它,而无需导入*.js
- 当再次单击时,我希望颜色消失.(喜欢/讨厌按钮,一切都可以,但如果我点击两次喜欢按钮,我希望颜色消失)
- 任何人都可以帮助我编写代码,以便在 extjs 4.2 的组合框中制作带有复选框的面板
- 所见即所得使每个单词都可以点击
- 日期选择器不适用于我的 jsf 和 xhtml 文件,任何人都可以指导我
- 任何 JavaScript 库的性能都可以像 Cut The Rope JavaScript 实现一样好吗?
- 无论如何都可以在当前页面后面打开jquery对话框或将其最小化
- 任何人都可以推荐包含搜索框的选择选项
- 语法:const {} = 变量名称,任何人都可以解释或指出我正确的方向
- 在 Javascript 中提升函数和变量时遇到问题,任何人都可以帮助我
- 如何使JavaScript中的所有函数都可以访问变量
- 如何定义一个变量,我的对象中的所有函数都可以访问该变量