我正在try 调用一个函数所需的次数.为了解决这个问题,我创建了一个接受rest个参数并迭代第一个参数的函数.我无法解包REST参数并将其传递给函数.有没有一种方法可以解包并将其作为参数传递给函数.以下是我的工作代码.有没有更好的办法让它发挥作用?先谢谢你.感谢任何人的帮助.

function hello(name) {
  console.log("Hello "+ name);
}

function greet(name,time_of) {
  console.log("Good " + time_of +" " +name);
}

function foo(times,x, ...args) {
    for(i=0;i<times;i++) {
    x(arguments)
    //x(args); //works good for hello() but not for greet(). Doesn't pass them to second argument
    x(args[0],args[1]); //This works but not scalable 
    //args.map((element) => x(element)); 

  }
}

foo(2,hello,"Myname");
foo(3,greet,"Myname","Afternoon");

推荐答案

只有spread个参数再次出局:

function hello(name) {
  console.log("Hello " + name);
}

function greet(name, time_of) {
  console.log("Good " + time_of + " " + name);
}

function foo(times, x, ...args) {
  for (i = 0; i < times; i++) {
    x(...args)
  }
}

foo(2, hello, "Myname");
foo(3, greet, "Myname", "Afternoon");

Javascript相关问答推荐

微软Edge Select 间隙鼠标退出问题

仅针对RTK查询中的未经授权的错误取消maxRetries

你怎么看啦啦队的回应?

在react JS中映射数组对象的嵌套数据

Html文件和客户端存储的相关问题,有没有可能?

使用ThreeJ渲染的形状具有抖动/模糊的边缘

使用Java脚本导入gltf场景并创建边界框

TinyMCE 6导致Data:Image对象通过提供的脚本过度上载

MarkLogic-earch.suggest不返回任何值

无法避免UV:flat的插值:非法使用保留字"

如何防止ionic 输入中的特殊字符.?

Google脚本数组映射函数横向输出

如何在AG-Grid文本字段中创建占位符

react 路由DOM有条件地呈现元素

是否设置以JavaScript为背景的画布元素?

我怎样才能点击一个元素,并获得一个与 puppeteer 师导航页面的URL?

从异步操作返回对象

将字体样式应用于material -UI条形图图例

使用导航时,路径的所有子组件都必须是路径

webpack 5和mini-css-extract-plugin在将scss保存到css文件后不加载css