J'ai analysé un fichier CSV à JSON puis ajouté mes propres en-têtes pour d'autres raisons étranges. J'ai donc des données qui ressemble à ceci:Dans la console, je peux utiliser des éléments dans JSON, via console.log ils ne montrent pas
dans mon dossier js que j'ai
console.log (jsonData.theData [0] .symbol);
et je reçois:
admin.js:46 Uncaught TypeError: Cannot read property '0' of undefined
Il ressemble à 0 me est défini à, mais quand je viens de taper dans le navigateur console la même commande dans le fichier js j'obtenir de bons résultats.
JSON.stringify (jsonData.theData [0])
avec la même erreur résultant.
Une idée pourquoi cela ne fonctionne pas? fichier
js ci-dessous:
var jsonData = {};
var theData = [];
document.getElementById("fileToRead").addEventListener("change",function() {
var input = document.getElementById("fileToRead");
for(var i = 0; i < input.files.length; i++){
var files = input.files[i];
Papa.parse(files, {
header:false,
dynamictyping:true,
complete:function(results){
var input = results.data;
input.forEach(function(input){
jsonData.theData = theData;
var singleEntry = {
"symbol" : input[0],
"date" : input[1],
"open" : input[2],
"high" : input[3],
"low" : input[4],
"close" : input[5],
"volume" : input[6]
}
jsonData.theData.push(singleEntry);
})
//console.log (jsonData);
// document.getElementById("editor").innerHTML = JSON.stringify(jsonData);
} // End Complete - Callback
}); // End PapaParse
} // End for loop
console.log(jsonData);
});
modifier .................
J'ai ajouté quelques console.logs à et reçu ce .. ..
Où exactement dans le fichier admin.js appelez-vous la fonction 'console.log()'? Je suppose que vous appelez la fonction au mauvais endroit où cette variable particulière n'est pas définie. – d3r1ck
Je vais modifier avec le code. – illcrx
Est-ce que ce que j'ai dit m'a aidé? Je veux dire que cela a du sens ou vous a aidé? – d3r1ck