JavaScript获取父函数参数

时间:2014-11-06 13:41:53

标签: javascript

我的功能如下:

define(['module', 'controller'], function(module, controller){
     (new module).build();
});

module.build内我想自动获取父类的参数,如:

module = function(){
    this.build = function(args){
        // make args the arguments from caller ( define ) fn above
    };
};

我知道我可以这样做:

module.build.apply(this, arguments);

但我想知道是否有更好的方法。有什么想法吗?

1 个答案:

答案 0 :(得分:6)

有一种方法可以做到这一点,如本例(http://jsfiddle.net/zqwhmo7j/)所示:

function one(){
  two()
}
function two(){
  console.log(two.caller.arguments)
}
one('dude')

它不是标准的,可能无法在所有浏览器中使用:

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Function/caller

你必须改变你的功能:

module = function(){
  this.build = function build(args){
      // make args the arguments from caller ( define ) fn above
    console.log(build.caller.arguments)
  };
};