Javascript 修剪字符串开头的逗号
我需要你的帮助 下面有一个函数,它将选择框内容转换为一个长字符串 问题是一旦函数运行,在开始处就有一个逗号 如何修改现有函数,以便我可以修剪/删除字符串开头的逗号Javascript 修剪字符串开头的逗号,javascript,Javascript,我需要你的帮助 下面有一个函数,它将选择框内容转换为一个长字符串 问题是一旦函数运行,在开始处就有一个逗号 如何修改现有函数,以便我可以修剪/删除字符串开头的逗号 initial result: ,A,B,C,D,E,F expected end result: A,B,C,D,E,F function select2var(select) { var x = document.getElementById(select).options var values = []
initial result: ,A,B,C,D,E,F
expected end result: A,B,C,D,E,F
function select2var(select) {
var x = document.getElementById(select).options
var values = []
for (var i=0; i < x.length; i++) {
values.push(x[i].value);
}
return values.join(",");
}
function test() {
document.getElementById('box').value = select2var('alphabet')
}
初始结果:,A,B,C,D,E,F
预期最终结果:A、B、C、D、E、F
函数select2var(选择){
var x=document.getElementById(选择).options
var值=[]
对于(变量i=0;i
HTML标记:
<select id="alphabet">
<option value=""></option>
<option value="A">A</option>
<option value="B">B</option>
<option value="C">C</option>
<option value="D">D</option>
<option value="E">E</option>
<option value="F">F</option>
</select>
A.
B
C
D
E
F
不要添加空值:
if (x[i].value.length) {
values.push(x[i].value)
}
不要添加空值:
if (x[i].value.length) {
values.push(x[i].value)
}
您可以不添加空值,或者-如果有多个空值-您可以使用
过滤器
:
// values = ['','A','B','','','C',...]
values = values.filter( function(v) {
// return 'false' when v is a false-coercing value, like the empty string
return !!v;
});
// values = ['A','B','C',...]
或较短版本(利用内置的Boolean
函数)
您可以不添加空值,或者-如果有多个空值-您可以使用
过滤器
:
// values = ['','A','B','','','C',...]
values = values.filter( function(v) {
// return 'false' when v is a false-coercing value, like the empty string
return !!v;
});
// values = ['A','B','C',...]
或较短版本(利用内置的Boolean
函数)
只需从第二个选项开始:
for(var i=1;etc
只需从第二个选项开始:for(var i=1;etc
关于过滤器(布尔值)
;)的原因不太明显,但可以肯定。关于过滤器(布尔值)
;)的原因不太明显,但可以肯定。