1
可變範圍我有在的FileReader()代碼我有範圍的問題。我有兩個console.logs()從上傳的JSON文件中輸出數據。按照預期在解析JSON的函數中輸出一個。另一個輸出'模板'數據/對象。它看起來像它的範圍問題。我應該在哪裏定義更新的角色對象有解析JSON數據更新漢字對象?的JavaScript的FileReader()函數
函數應該導入JSON文件,分析它,然後串入一個文本,並採取了解析,並輸出放到角色物由整個頁面可借鑑。
正在導入的角色對象,是從另一用戶會話的角色對象的導出的版本。
$('#import').click(function(){
var iData = document.getElementById('selectFiles').files;
console.log(iData);
if (iData.length <= 0) {
return false;
}
var file = new FileReader();
file.onload = function(x) {
console.log(x);
var output = JSON.parse(x.target.result);
var stringed = JSON.stringify(output,null,2);
document.getElementById('result').value = stringed;
character = output;
console.log(character); //this outputs the data as expected
}
console.log(character);//this outputs blank 'template' data
file.readAsText(iData.item(0));
});
我在前些日子發佈了類似的帖子,但帖子有點....不好,如果我是誠實的。希望我已經探索足夠讓這個更好一點。
感謝
'的console.log(字); //這個輸出空白「模板」結束了'onload'功能之前data'已經被解僱了。到那個時候,'character'變量還沒有被你的回調更新。 –
謝謝你,我可以用這方面的工作。我也檢查了這個騙局。 – Kalacia