JavaScript嵌套函数交叉引用

时间:2018-08-12 03:19:52

标签: javascript javascript-objects nested-function

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

非常感谢您提供一些有关如何调用它的建议

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

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

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

我目前遇到错误

  

无法读取未定义的属性'funct1'

1 个答案:

答案 0 :(得分: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