Javascript - 地图(函数)返回 this.value - 逗号在错误的一边

MKR*_*MKR 0 javascript

我使用此代码列出数组中的所有检查值:

   var healthSafety = $('input:checkbox[name=health_safety]:checked').map(function() {
    return this.value + (' ');
   }).get();
Run Code Online (Sandbox Code Playgroud)

但问题是,分隔它们的逗号落错了地方。

我得到类似的东西:

三重梯,天窗,通往屋顶的通道

但我想要这样的东西:

三重梯子、天窗、通往屋顶的通道。

我试着把:

   return this.value + (' ');
Run Code Online (Sandbox Code Playgroud)

但它没有帮助

有什么办法可以解决吗?

T.J*_*der 5

您依赖于隐式join,它在每个项目后放置一个逗号,但您的项目(一旦您更新它们)以空格结尾。

join使用您想要的分隔符执行显式:

var healthSafety = $('input:checkbox[name=health_safety]:checked')
    .map(function() { return this.value; })
    .get()
    .join(", ");
Run Code Online (Sandbox Code Playgroud)

也许

const healthSafety = $('input:checkbox[name=health_safety]:checked')
    .get()
    .map(({value}) => value)
    .join(", ");
Run Code Online (Sandbox Code Playgroud)