【问题标题】:JavaScript Nested Functions cross referencingJavaScript 嵌套函数交叉引用
【发布时间】:2018-08-12 03:19:51
【问题描述】:

我有一个嵌套函数,它需要先前声明的函数的 返回类型 才能将其用作 函数参数t。我不知道我的结构是否正确或可以支持这一点。

如果能提供一些关于如何调用它的建议,将不胜感激

  var myObject = {
     funct1 : (function (){..... return funct1; })(),
     funct2 : (function (funct1){..... return func2; })(funct1)
     };

所以问题是我如何在第二个函数中正确调用funct1参数

我是使用 myObject.Funct1 还是有另一种在内部调用该对象的方法...

我目前遇到错误

无法读取未定义的属性“funct1”

【问题讨论】:

  • 你能解释一下“返回类型”是什么意思吗?
  • 所以函数一返回funct1对象...函数二需要该对象并将其用作参数。我不确定如何在 myObject 对象中调用它...感谢您的帮助

标签: javascript javascript-objects nested-function


【解决方案1】:

我认为没有办法通过声明对象字面量来做到这一点,因为在对象创建期间不能使用对象的键。

不过,您可以通过这样做获得相同的功能:

const myObject = (() => {
  const func1 = () => 'result of func1';
  const func2 = () => func1() + ' and func2';
  return { func1, func2 }
})();

console.log(myObject.func2()); // result of func1 and func2

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-07-12
    • 1970-01-01
    • 1970-01-01
    • 2012-02-07
    • 1970-01-01
    • 2021-11-29
    • 2020-03-03
    相关资源
    最近更新 更多