javascript - jQuery - 仅当 a 有值时才添加逗号

标签 javascript jquery

我不太清楚做到这一点的最佳方法,但我有一系列值被输入到我的 jquery 插件中。我遵循在每个值后添加空格的惯例。然后,我获取 jquery 参数并尝试为每个参数添加一个 ‘,’,以便可以将其输入到 json 调用中。问题是,如果我添加 ‘,’ 代替空格,并且从插件中的变量返回的值为空,我会得到多个我不需要的逗号。 (即,,播客)。如果变量中有值,如何仅添加逗号?

$(document).ready(function () {
   $('#gallery').mediaFilters({
        mediaType: '${article} ${podcast} ${image}',
        headerType: '${internet} ${cloud} ${background}',
    });
});

JQUERY 发送到 JSON:

var mediaType = "&mediaType=" + opts.mediaType.split(/[ ]/).join(',');
var headerType = "&headerType=" + opts.headerType.split(/[ ]/).join(',');

最佳答案

正则表达式 /+/ 将匹配多个空格,因此输入 a b 将变成 a,b

正则表达式 /^ *| *$/ 将匹配字符串开头和结尾的空格。

总而言之,这里的代码将用逗号替换这些内容,并删除开头和结尾的空格。

var mediaType = "&mediaType=" + opts.mediaType.replace(/^ *| *$/g,'').replace(/ +/g,',');
var headerType = "&headerType=" + opts.headerType.replace(/^ *| *$/g,'').replace(/ +/g,',');

关于javascript - jQuery - 仅当 a 有值时才添加逗号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23793484/

相关文章:

javascript - 局部变量影响全局变量 - Javascript 变量作用域

javascript - 在同一位置放置动态形状

php - 如何在 jquery ui 自动完成中使用 json 传递隐藏的 id?

javascript - 为什么 jQuery Datepicker 在输入数字并按下回车键时选择今天的日期?

vim - 如何识别 Vim 中的 javascript 库/框架?

javascript - 从 Promise 内部访问数组时出现问题

javascript - 从 DrawIO 中删除功能的最佳方法是什么?

javascript - 用于 JQuery 或其他 JavaScript 框架的所见即所得 GUI 生成器 (IDE)?

javascript - 如何以编程方式更改 svg 视口(viewport)?

javascript - 无需每次循环即可填充输入值