var objectHTMLCollection = document.getElementsByTagName("select"),
string = [].map.call( objectHTMLCollection, function(node){
return node.id || "";
}).join(" ");
我有这个代码将[object HTMLCollection]
转换为我希望将其转换为数组的字符串。
所以说他们的输出hello world I am here
会变成[hello,world,I,am,here]
答案 0 :(得分:2)
您可以使用split(" ")
var stringArray = string.split(" ");
或者您可以在准备字符串时准备数组,请参阅下面的代码
var stringArray = new Array();
var objectHTMLCollection = document.getElementsByTagName("select"),
string = [].map.call( objectHTMLCollection, function(node){
stringArray.push(node.id);
return node.id || "";
}).join(" ");
答案 1 :(得分:1)
Map已经返回一个数组。无需将其转换为字符串,然后再将其转换为数组。
var objectHTMLCollection = document.getElementsByTagName("select"),
idarray = [].map.call( objectHTMLCollection, function(node){
return node.id || "";
}), string = idarray.join(' ');
document.write('<div>String: ' + string + '<div>');
document.write('Array: ' + JSON.stringify(idarray) + '<div>');
<select id='dsada1'></select>
<select id='dsada2'></select>
<select></select>
<select id='dsada4'></select>
<select id='dsada5'></select>
<select id='dsada6'></select>
<br/><br/>