如何使用扩展语法将数组传递给 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?
如何使用flask将javascript数组传递给python脚本[使用flask示例]
如何使用javascript动态地将json数组传递给数据表