Initial Code lesen:JS. Kann nicht Eigentum von undefined
var bestproducts = {}
data.forEach(function(element,index) {
bestproducts[element.shop_id][index] = element.product_data
}
Während der ersten Iteration ich die folgende Fehlermeldung erhalten:
Uncaught TypeError: Cannot set property '0' of undefined
Die einzige Lösung, die ich über gekommen sind ist die folgende:
var bestproducts = []
data.forEach(function(element,index) {
if(!bestproducts[element.shop_id]){
bestproducts[element.shop_id] = {}
bestproducts[element.shop_id][index] = element.product_data
} else {
bestproducts[element.shop_id][index] = element.product_data
}
}
FRAGE: Gibt es in diesem Fall eine kürzere/elegantere Lösung?
die gleiche Linie löschte des 'if' und entferne den' else' Block. – Lux