在javascript函数数组中调用sibling元素

时间:2015-09-16 15:30:10

标签: javascript arrays multidimensional-array requirejs

我目前正在使用requirejs开发并且有一个模块在一个assoziative数组中返回两个函数,现在我想从第二个函数调用第一个函数,我尝试了this.foo(),但它没有用。 有没有办法在assoziative数组中调用兄弟元素,或者可能需要模块本身?

示例:

define[],function(){
  return {
    foo: function() { echo("foo");},
    bar: function() { this.foo();}
  }
}

1 个答案:

答案 0 :(得分:0)

如果没有确切地知道你打算如何调用bar,很难确切地知道出现了什么问题。也就是说,这应该对你有用,假设问题是this在调用bar()时没有提到正确的事情:

define[], function(){
  var baz = {
    foo: function() { echo("foo");},
    bar: function() { baz.foo();}
  };

  return baz;
}

因为它基本上“静态地”与Function.bind()做同样的事情。