程序开发 · 2023年11月13日

JS对象中调用属性方法出错:如何解决 “TypeError: this.fn1 is not a function”?

js对象中调用属性中的方法错误

在js代码中遇到以下错误:

typeerror: this.fn1 is not a function

登录后复制

原因是以下代码段:

test.exec = function() {
  return fn.fn1();
}

登录后复制

其中,fn对象尚未解析完毕,因此无法在对象内部引用其成员fn1。

要解决此问题,可以将代码重写为:

test.fn = {
  fn1: test.a
};

test.exec = function() {
  return test.fn.fn1();
}

登录后复制

这种方式先将外部函数test.a复制到嵌套对象test.fn中,然后再引用test.fn。

以上就是JS对象中调用属性方法出错:如何解决 “TypeError: this.fn1 is not a function”?的详细内容,更多请关注GTHOST其它相关文章!