J'ai un ensemble de données comme ci-dessous:
data = '{"a": 1, "b": 2, "c": 3}, {"a": 4, "b": 5, "c": 6}, {"a": 7, "b": 8, "c": 9} ';
J'essaie de créer une fonction avec l'ensemble de données comme paramètre, mais le paramètre ne serait pas lu. Voici ce que j'ai fait:
fonction add (données) {alerte (données); } ajouter (données);
Je ne reçois que [objet Object], [objet Object] ... Quel est le problème ici? Merci.
Vous pouvez utiliser JSON.stringify()
.
Cependant, les données doivent avoir une structure JSON.
Donc, dans votre cas, ce serait:
var data = [{"a":1,"b":2,"c":3},{"a":4,"b":5,"c":6},{"a":7,"b":8,"c":9}]
add(JSON.stringify(data))
[{"a":1,"b":2,"c":3},{"a":4,"b":5,"c":6},{"a":7,"b":8,"c":9}] //output of JSON.Stringify()
Vous devez d'abord transmettre à la fonction un paramètre d'objet et vous pouvez stocker l'objet dans un tableau:
var data = []; //array
function add(d) {
data.Push(d); //add passed item to array
console.dir(data); //this will print the whole object
}
add({"a":1,"b":2,"c":3});
console.dir()
vous fera imprimer les propriétés dans l'objet.
je reçois également le même problème quelques heures plus tard et je l'ai corrigé en utilisant JSON.parse (données) .. Comme le codage ci-dessous
var data = '[{"a":1,"b":2,"c":3},{"a":4,"b":5,"c":6},{"a":7,"b":8,"c":9}]';
var obj = JSON.parse(data);
obj.forEach(myFunction);
function myFunction(item, index) {
var eachid = item.id;
console.log("Item-id", eachid);//you will get id
add(eachid);
}
vous passez directement les données. donc seulement vous obtenez [objcet Object] ... si vous utilisez JSON.parse (data), vous obtiendrez l'id de chaque élément