早教吧 育儿知识 作业答案 考试题库 百科 知识分享

求js面试题答案第二题:请说明要输出正确的myName的值要如何修改程序?foo=function(){this.myName="Foofunction.";}foo.prototype.sayHello=function(){alert(this.myName);}foo.prototype.bar=function(){setTimeout(this.sayHel

题目详情
求js面试题答案
第二题:请说明要输出正确的myName的值要如何修改程序?
foo = function(){
this.myName = "Foo function.";
}
foo.prototype.sayHello = function(){
alert(this.myName);
}
foo.prototype.bar = function(){
setTimeout(this.sayHello,1000);
}
var f = new foo;
f.bar();
▼优质解答
答案和解析
foo = function(){
this.myName = "Foo function.";
}
foo.prototype.sayHello = function(){
alert(this.myName);
}
foo.prototype.bar = function(){
setTimeout(
(function(s){
return function(){
s.sayHello()
}
})(this),1000);
}
var f = new foo;
f.bar();