传递参数以在JavaScript中起作用



我有一个函数(情况),如下

let fn = (() => {
  let ab = {}; 
  let register = () => {
    console.log("hello" + ab[x])
  };
  return (x,y) => {
    ab[x] = y;
    return register();
  };
})();

此功能仅在我按以下调用时才能工作,

let x = 'key';
let y = 'value';
fn(x,y);

是否有机会直接呼叫

fn('key', 'value');

我必须在功能中进行哪些更改才能直接调用

问题是您的register功能不知道x。您需要从以前的功能中传递:

let fn = (() => {
  let ab = {}; 
  let register = (x) => {
    console.log("hello" + ab[x])
  };
  return (x,y) => {
    ab[x] = y;
    return register(x);
  };
})();
fn("key", "value");

我相信这是因为您没有定义函数中的参数。

   let fn = ((x,y) => {
  let ab = {}; 
  let register = () => {
    console.log("hello"+ab[x])};
    return (x,y) => {
      ab[x]=y;
      return register();
    };
})();

相关内容

  • 没有找到相关文章

最新更新