如果value为null,则在JavaScript中使用+连接会提供额外的逗号

时间:2013-10-09 16:30:36

标签: javascript

这里当我用逗号分隔符连接三个不同的值时,如果value为null,则逗号是连接的。如果值为null,我该如何避免使用额外的逗号?

以下是我尝试过的代码。

var forecast = (is_forecast_checked()) ? 'f' : '';

var contract_volume = (is_contract_volume_checked()) ? 'd' : '';

var actual_volume = (is_actual_volume_checked()) ? 'a' : '';

var volume_type = forecast + ',' + contract_volume + ',' + actual_volume ;

2 个答案:

答案 0 :(得分:3)

非常简单

var forecast = (is_forecast_checked() ? 'f' : ''),
// add the comma here if its not null
    contract_volume = (is_contract_volume_checked() ? ',d' : ''),
// same here
    actual_volume = (is_actual_volume_checked() ? ',a' : ''),
// remove the comma concatenation
// replace unwanted, double commas, preceding or ending commas
    volume_type = (forecast + contract_volume + actual_volume).replace(/$,|^,|\B,/g,'');

答案 1 :(得分:1)

这个怎么样:

var array = [];

is_forecast_checked() && array.push("f");
is_contract_volume_checked() && array.push("d");
is_actual_volume_checked() && array.push("a");

volume_type = array.join(",");