2013-11-21 41 views
0

我剛纔問過類似的問題(儘管略有不同)..使用Javascript - 通過對象循環基礎上,數量可變

基本上都採用此http://jsfiddle.net/WTMBA/

中的jsfiddle我想通過對象和基於循環關於通過qty變量循環的次數並將對象值添加到數組中。

例如

[Object { url="http://domain.com/abc", qty="1", price="2.99" }, Object { url="http://myurl.com/cde", qty="3", price="64.11" }] 

Quantify的()函數將返回此與4項的數組,如在對象中的第一項具有1的數量值,並且所述第二值具有爲3的量( 1 + 3)

從Quantify函數返回數組的結構應包括的條件,網址&價格(見小提琴)

任何人都可以建議我應該怎麼修改量函數來做到這一點?

+1

所以你想繼續添加基於qty變量的數組相同的對象?例如qty = 10,添加相同的項目10次?如果是這種情況,試試這個。 http://jsfiddle.net/denniswaltermartinez/apH9H/ –

+0

看起來不錯..會檢查出來 – Zabs

+0

如果你添加到'回答你的Q'我會接受:) – Zabs

回答

0

如果您試圖將同一對象反覆添加到基於對象的qty變量的數組中,則可以使用嵌套循環來完成此操作。

var products = [{ 
    url: 'http://domain.com/abc', 
    qty: 1, 
    price: 2.99 
}, { 
    url: 'http://myurl.com/cde', 
    qty: 3, 
    price: 64.11 
}]; 

var i = 0, 
    l = products.length, 
    cart = []; 

for (; i < l; i++) { 
    var product = products[i]; 

    for (var x = 0; x < product.qty; x++) 
     cart.push(product); 
} 

查看以下JSFiddle的完整示例。