这是我的 JS 的简化版本:
var myObject = function() {
return {
functionOne: function() {
//some other logic here
},
functionTwo: function() {
var self = this;
//some logic here
//then call functionOne
self.functionOne();
}
};
}
然后我的 html 正文中有这个:
<a href="#" onclick="myObject.functionTwo()">click me</a>
当我点击链接时,为什么会出现错误Uncaught TypeError: Object [some url] has no method 'functionOne'?
最佳答案
您看到的错误并不反射(reflect)您所显示的示例代码。
也就是说,按照您使用代码的方式,您应该能够将其简化为:
var myObject = {
functionOne: function() {
},
functionTwo: function() {
this.functionOne();
}
}
关于JavaScript, 'this' 引用,当从 anchor 标记调用对象函数时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13521374/