Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/417.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何定义一个回调函数可以在其他地方插入?Javascript es5_Javascript_Callback - Fatal编程技术网

如何定义一个回调函数可以在其他地方插入?Javascript es5

如何定义一个回调函数可以在其他地方插入?Javascript es5,javascript,callback,Javascript,Callback,文件 carousel = new Carousel(); carousel.addCallback = (function(data){ // I want the data from A.file, but i can't ! heeeeeelp~ do_something(data) carousel.addCallback() do_something(data) })(); 档案 function Carousel(){ ~~~~~~ code ~~~~~~

文件

carousel = new Carousel();

carousel.addCallback = (function(data){

// I want the data from A.file, but i can't ! heeeeeelp~

  do_something(data)
  carousel.addCallback()
  do_something(data)
})();
档案

function Carousel(){

  ~~~~~~ code ~~~~~~

  this.add = function(data){   
    do_something()
    self.addCallback.call(this, arguments)
  };

  this.remove = function(data){
    do_something()
    this.removeCallback.call(this, arguments)
  };

  ~~~~~~ code ~~~~~~    
}

Carousel.prototype.addCallback = function(){};
Carousel.prototype.removeCallback = function(){};
问题是我无法从B.file中的A.file获取
数据

在我的例子中,我需要在创建或删除操作之后插入一些回调

这样对吗?有人可以分享更多的技巧,魔术或纠正以上!非常感谢。

我找到了解决办法

文件

carousel = new Carousel();

carousel.addCallback = (function(data){

// I want the data from A.file, but i can't ! heeeeeelp~

  do_something(data)
  carousel.addCallback()
  do_something(data)
})();
档案

function Carousel(){

  this.add = function(data){   
    do_something()
    self.addCallback.call(this, data)
  };
}

Carousel.prototype.addCallback = function(){};
然后执行carousel.add('abc'),之后将调用do_bbb_things('abc')