繁体   English   中英

为什么数组字符串用逗号分隔?

[英]Why are array strings separated by a comma?

我正在尝试从用户输入的信息中列出一个列表。

   var todoArray = new Array();

document.getElementById("addButton").onclick = function(){

    var temp = document.getElementById("inputBox").value;
    var appendTemp = "<li><input type=\"checkbox\">" + temp + "</li>";

    todoArray.push(appendTemp);

    document.getElementById("todoListUL").innerHTML = todoArray;

    console.log(todoArray);

}

但是当列表时间显示出来时,它们之间都有一个逗号,JSFiddle用于图像的链接在这里: JSFiddle

为什么用逗号分隔它们,如何将其删除?

当您将任何值分配给元素的.innerHTML属性时,该值将隐式转换为字符串,然后解析为HTML。 数组转换为字符串的默认方式是通过.join()方法,而默认的数组分隔符是逗号。

如果您什么都不想要,您可以自己调用.join()

document.getElementById("todoListUL").innerHTML = todoArray.join("");

问题在这一行:

document.getElementById("todoListUL").innerHTML = todoArray;

因为正确的成员将转换为string ,并且在内部调用todoArray数组的join方法,并且默认delimitercomma

更改为

document.getElementById("todoListUL").innerHTML = todoArray.join("");

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM