JSONのコールバック関数

配列とオブジェクトの入れ子になったJSON形式を、var json={…}; として試みに以下のコールバック関数を用いて再帰的に読み込ませると、10MB程度のデータ(例えばMTG JSON)でタイムアウト、スタックオーバーフローを起こす件。

【JavaScript】ネストされたJSONのすべての要素にアクセスする

var walkJSON = function walkJSON(data, callback){
     for (var key in data) {
         callback(key, data[key]);
         if (typeof data[key] === "object") {
             walkJSON(data[key], callback);
         }
     }
 }
   walkJSON(json, function(key, value) {
     document.writeln(key + ":" + value);
     document.writeln("<br>");
  });

これはjavascript がブラウザのプログラムである意味、仕様なのかもしれませんが本来は、XMLHttpRequest するべきなのでしょうね、とほほ。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です