data.map ist keine Funktion

Bin ich heftig mit meinem Kopf gegen einen Fehler ich kann nicht herausfinden, wie zu beheben. Ich habe die folgenden;

JSON

{"products":
[
    {
        "product_id" : "123",
        "product_data" : {
            "image_id" : "1234",
            "text" : "foo",
            "link" : "bar",
            "image_url" : "baz"
        }
    },{
        "product_id" : "456",
        "product_data" : {
            "image_id" : "1234",
            "text" : "foo",
            "link" : "bar",
            "image_url" : "baz"
        }
    }
]}

sowie die folgende jQuery -

function getData(data) {
    this.productID = data.product_id;
    this.productData = data.product_data;
    this.imageID = data.product_data.image_id;
    this.text = data.product_data.text;
    this.link = data.product_data.link;
    this.imageUrl = data.product_data.image_url;
}

$.getJSON("json/products.json").done(function (data) {

    var allProducts = data.map(function (item) {
        return new getData(item);
    });
});

doch ich erhalte eine Fehlermeldung, dass Karte.Daten undefiniert, da eine Funktion? Ich schaute nicht wissen, was nicht so funktioniert, wie ich habe, kopiert diese auf ein neues Projekt von bisher verwendeten code. Das einzige, was anders ist, ist die json-Quelle. Die Vorherige hatte nicht die {"products": Teil, bevor die [] Klammern. Ist das, was warf mich aus?

Kommentar zu dem Problem
Bitte nicht bash Ihren Kopf mehr - wir werden durchkommen... Kommentarautor: Mark C.
Karte.Daten oder Daten.Karte? Kommentarautor: depperm

InformationsquelleAutor der Frage mrcat | 2015-06-12

Schreibe einen Kommentar