Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/hibernate/5.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 如何在此对象中发送上下文?_Javascript_Call_Bind_Apply - Fatal编程技术网

Javascript 如何在此对象中发送上下文?

Javascript 如何在此对象中发送上下文?,javascript,call,bind,apply,Javascript,Call,Bind,Apply,例如,我有简单的代码: let arrayOfObjects = [{ arrays: [arraysFunction("array object 1", "some url", () => { console.log(this); // it should return {name: "array object 1", url: "some url", callback: fn} }]) }]; function arraysFunction(name, url,

例如,我有简单的代码:

let arrayOfObjects = [{
  arrays: [arraysFunction("array object 1", "some url", () => {
    console.log(this);  // it should return {name: "array object 1", url: "some url", callback: fn}
  }])
}];


function arraysFunction(name, url, callback) {
  return {name, url, callback}
}
我希望这里有我的数组对象 我怎样才能用(申请、打电话、绑定)完成

唯一的问题是返回的回调将与此中的回调不同(
==
将不起作用)


唯一的问题是返回的回调将与此中的回调不同(
=
将不起作用)。

要使用all/apply,只需使用以下命令

let object = {
  arrays: [arraysFunction("array object 1", "some url", function(){
    console.log(this);
  })]
};


function arraysFunction(name, url, callback) {
  return callback.apply({name, url, callback});
}

要使用全部/应用,只需使用以下命令

let object = {
  arrays: [arraysFunction("array object 1", "some url", function(){
    console.log(this);
  })]
};


function arraysFunction(name, url, callback) {
  return callback.apply({name, url, callback});
}