首页 > 解决方案 > Javascript 数组以不需要的逗号显示

问题描述

我需要你的帮助:在 Javascript 中,我使用 push 创建了一个数组。

for (const elem of prod[i].motor) {
    if (usedMotor.includes(elem) === false) {
       motor.push('<li>'+elem+'</li>');
       usedMotor.push(elem);
    }
}

但是如果我想用它来显示它,document.getElementById('spanMotorType').innerHTML = 'Applicable Motors:'+ motor; 它会在元素之间用逗号打印。

Applicable Motors:
Induction motor
,
Permanent magnet motor
,
Synchronous reluctance motor

控制台显示:

Array(3) [ "<li>Induction motor</li>", "<li>Permanent magnet motor</li>", 
"<li>Synchronous reluctance motor</li>" ]
0: "<li>Induction motor</li>"
1: "<li>Permanent magnet motor</li>"
2: "<li>Synchronous reluctance motor</li>"

有没有办法删除这个逗号?数组的长度可以在 1 到 3 之间。

谢谢

标签: javascriptarrays

解决方案


写如下:

document.getElementById('spanMotorType').innerHTML = 'Applicable Motors:'+ motor.join(' ');

解释:

默认情况下,当字符串与数组连接时,输出将打印带有逗号的数组项,因为它将原样转换为字符串,并且由于数组项之间有逗号,因此也会打印:

document.write(  "foo " + ['a','b','c']  )

不带逗号:

document.write(  "foo " + ['a','b','c'].join(' ')  )

Arrayjoin使用您选择的分隔符而不是默认逗号将 Array 转换为字符串。


推荐阅读