[英]Generating multiple JSON object arrays in Javascript
我已經有這樣的數組。
var dataLayer = [];
dataLayer = [{
'transactionProducts': [{
'sku': '96710381',
'name': 'QEH',
'category': 'GLD',
'price': '309.00',
'quantity': '3'
},
{
'sku': '96710382',
'name': 'RYP',
'category': 'FMT',
'price': '209.00',
'quantity': '3'
}]
}];
現在,我需要生成另一個數組,並使用上述數組中的所有值。 這就是我的做法。 請在下面找到代碼。 但是僅生成第一組值。 第二組不會在新數組中生成。 感謝有關如何進行此操作的評論!
var length = dataLayer[0]['transactionProducts'].length;
var len = dataLayer.length;
var gtmDataLayer = [];
var gtmDataLayer = [];
for (i=0;i<length;i++) {
var zsku = window.dataLayer[0]['transactionProducts'][i].sku;
var zsku = window.dataLayer[0]['transactionProducts'][i].sku;
var zname = window.dataLayer[0]['transactionProducts'][i].name;
var zcat = window.dataLayer[0]['transactionProducts'][i].category;
var zprice = window.dataLayer[0]['transactionProducts'][i].price;
var zquant = window.dataLayer[0]['transactionProducts'][i].quantity;
window.gtmDataLayer.push({
'transactionProducts': [{
'sku': zsku,
'name': zname,
'category': zcat,
'price': zprice,
'quantity': zquant
}]
});
}
這應該做。
var length = dataLayer[0]["transactionProducts"].length;
var len = dataLayer.length;
var gtmDataLayer = [{"transactionProducts":[]}];
for (i=0;i<length;i++) {
var zsku = window.dataLayer[0]["transactionProducts"][i].sku;
var zname = window.dataLayer[0]["transactionProducts"][i].name;
var zcat = window.dataLayer[0]["transactionProducts"][i].category;
var zprice = window.dataLayer[0]["transactionProducts"][i].price;
var zquant = window.dataLayer[0]["transactionProducts"][i].quantity;
gtmDataLayer[0]['transactionProducts'].push(
{
"sku": zsku,
"name": zname,
"category": zcat,
"price": zprice,
"quantity": zquant
}
);
}
稍后,您也可以嘗試動態地自動自動推送“ transactionProducts”
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.