2017-04-09 54 views
0

進出口打印出數組中的項目在一個HTML列表:寫出在逗號陣列結果項目每個項目後

"use strict"; 

var giftArray = ["kettle", "iron", "bed", "tv", "lamp"]; 
var gifts = function() { 
    var values= []; 
    for (var i = 0; i < giftArray.length; i++) { 
    values.push("<li>" + giftArray[i] + "</li>"); 
    } 
    document.write("<ul>" + values + "</ul>"); 
} 

gifts(); 

它的不同之處在於它包含每個結果後逗號工作。爲什麼會發生這種情況,我該如何阻止它?

回答

0

如果您將數組連接到一個字符串,您將獲得默認數組.toString()表示形式,即所有使用逗號連接的元素。

使用the .join() method加入所有與您選擇,例如分離器中的數組的元素,一個空字符串:

var giftArray = ["kettle", "iron", "bed", "tv", "lamp"]; 
 
var gifts = function() { 
 
    var values= []; 
 
    for (var i = 0; i < giftArray.length; i++) { 
 
    values.push("<li>" + giftArray[i] + "</li>"); 
 
    } 
 
    document.write("<ul>" + values.join("") + "</ul>"); 
 
} 
 

 
gifts();

或者你可以使用.join(),而不是你的請使用適當的HTML標籤來加入您的原始giftArray

var giftArray = ["kettle", "iron", "bed", "tv", "lamp"]; 
 
var gifts = function() { 
 
    document.write("<ul><li>" + giftArray.join("</li><li>") + "</li></ul>"); 
 
} 
 

 
gifts();

1

使用加入()與空字符串作爲定界符

document.write("<ul>" + values.join('') + "</ul>"); 

writng陣列成DOM時默認爲將其轉換爲使用Array.prototype.toString()串,其包括逗號delimter

相關問題