将参数传递给javascript中的函数

Posted

技术标签:

【中文标题】将参数传递给javascript中的函数【英文标题】:Passing Arguments to function in javascript 【发布时间】:2019-07-15 22:38:58 【问题描述】:

我有一个功能(案例)如下,

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');

我必须对函数进行哪些更改才能直接调用

【问题讨论】:

【参考方案1】:

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

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

【讨论】:

【参考方案2】:

问题是您的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 = (() => let ab = ; let register = () => for(let key in ab) console.log("你好"+ab[key]); ; return (x,y) => ab[x]=y; return register(); ; )(); `

以上是关于将参数传递给javascript中的函数的主要内容,如果未能解决你的问题,请参考以下文章

将参数传递给javascript中的函数

如何将 JS 函数的引用作为参数传递给 ExternalInterface 调用?

将对象作为参数传递给函数

Excel VBA - 将参数参数传递给 Sub

将整数参数传递给 C 中的主函数

将参数传递给 JQuery 函数