如何使用扩展语法将数组传递给 JavaScript 中的方法

Posted

技术标签:

【中文标题】如何使用扩展语法将数组传递给 JavaScript 中的方法【英文标题】:How to pass array using spread syntax into method in JavaScript 【发布时间】:2017-08-13 07:03:26 【问题描述】:

我正在尝试将数组传递给方法,但引号有问题。这是一个类似于我想要实现的案例。

const remove = ['blue', 'round', 'tall']

function removeClass(param) 
    foo.classList.remove(param)
  

removeClass(...remove)

问题是结果是foo.classList.remove('blue, round, tall'),它不起作用。我正在努力实现这一目标foo.classList.remove('blue', 'round', 'tall')

我尝试过使用remove.map(el => `'$el'`).join(','),但结果是foo.classList.remove("'blue', 'round', 'tall'"),这也不起作用。

【问题讨论】:

您的removeClass 函数旨在仅删除一个类。您需要定义一个 rest 参数或 arguments 对象来获取它们。一切都取决于你想如何设计你的功能。 或者只是不要隐藏在函数后面:foo.classList.remove(...remove) 【参考方案1】:

尝试使用剩余参数:

const remove = ['blue', 'round', 'tall'];

function removeClass(...param) 
    foo.classList.remove(...param);
  

removeClass(...remove);

【讨论】:

以上是关于如何使用扩展语法将数组传递给 JavaScript 中的方法的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 PHP 和 Ajax 将数组传递给 Javascript?

如何使用javascript将数组值传递给dojo饼图

如何使用flask将javascript数组传递给python脚本[使用flask示例]

如何使用javascript动态地将json数组传递给数据表

如何将 NSArray 传递给 JavaScript 文件并在 JavaScript 中打印该数组?

将JSON数组从javascript传递给spring mvc控制器