输入/搜索内容
2
关注
1
关注者
把_C函数用在自定义类成员函数上时,没有获取到正确的this
帮助
创建于 2019-08-11 14:47:22  更新于 2019-08-11 14:50:47
 3
 1842

试运行以下代码:

function MyClass() { this.m_name = "my name"; } MyClass.prototype.printMyName = function() { Log(this.m_name); return true; } function main() { var myobj = new MyClass(); myobj.printMyName(); _C(myobj.printMyName); }

打印结果为:

  • my name
  • null

即 _C(myobj.printMyName)调用时 , 函数内的 this 并没有指向 myobj 对象
请问如何解决这个问题?

相关推荐
评论
全部评论 (3)
    function MyClass() { var self = {} self.m_name = "My Name" self.printMyName = function () { Log(self.m_name) return true } return self } function main() { var myobj = MyClass() myobj.printMyName() _C(myobj.printMyName) }
    7 年前

    多谢!

    7 年前

    原因是 myobj.printMyName 传入 _C 后, this 指针指向 变了。导致的问题。

    7 年前
  • 1
社区
回测系统
APP 下载
iPhone 下载
© 2015 - ∞ INVENTOR PTE LTD (SG)