Sudno,
все нужные строки ставьте после 8 когда придёт ответ тогда и выведется всё что нужно --
function GetData() {
$.getJSON("dataset.json",function(obj_dat){
for (var i = 0; i < obj_dat.length; i++) {
if (obj_dat[i]["type"] == "list") { Lists = obj_dat[i]["list"]; }
if (obj_dat[i]["type"] == "node") { Nodes = obj_dat[i]["list"]; }
if (obj_dat[i]["type"] == "elem") { Elems = obj_dat[i]["list"]; }
}
$("#optionbar").append("<b>1: "+Lists.length+Nodes.length+Elems.length+"</b><br>");
$("#optionbar").append("<b>2: "+Lists.length+Nodes.length+Elems.length+"</b><br>");
});
};
ещё раз -> запрос пошёл -- браузер занимается своими делами а не ждёт -- пришёл ответ -- есть возможность обработает или поставит в очередь.
-- тонкости асинхронного программирования