说,我有两个功能:
function foo() {
this.lorem = 'ipsum';
}
function boo() {
console.log(this.lorem);
}
我想在boo
函数的末尾插入foo
函数,以便它们可以共享相同的this
。我该怎么办?
答案 0 :(得分:1)
喜欢这个吗?
function foo() {
this.lorem = 'ipsum';
console.log(this.lorem);
}
严肃地说,你的问题不够明确,无法得到可靠回答。
答案 1 :(得分:1)
如果您想将它们分开:
function foo() {
this.lorem = 'ipsum';
boo(this);
}
function boo(element) {
console.log(element.lorem);
}
答案 2 :(得分:1)
在相同的背景下包裹它们:
var myClass = {
foo: function foo() {
this.lorem = 'ipsum';
this.boo();
}, boo: function boo() {
alert(this.lorem);
}
};
然后激活foo
:
myClass.foo();
答案 3 :(得分:0)
function foo() {
this.lorem = 'ipsum';
boo.call(this);
}
function boo() {
console.log(this.lorem);
}
foo();
答案 4 :(得分:0)
如果您不想修改现有功能,请执行以下操作:
function foo() {
this.lorem = 'ipsum';
}
function boo() {
console.log(this.lorem);
}
function bar() {
boo.call(new foo);
}
bar();
这是一个正在运行的JSFiddle: http://jsfiddle.net/8Wb6T/