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

How can i send context in this object?

例如我有简单的代码:

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}
}

我想在这里放置我的数组对象 我如何使用(申请、调用、绑定)实现?

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

function arraysFunction(name, url, callback) {
  callback = callback.bind({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});
}