Javascript 関数から JSON オブジェクトを設定し、それを別の関数のパラメーターとして使用しようとしていますが、この obj には関数外の値がありません。関数の外でこのjsonオブジェクトを作成しました:
var obj = {"Level":0, "Index":0, "Count":0, "AABB":[], "Point":[], "Children":[]};
それで
function loadXMLDoc()
{
if(window.XMLHttpRequest){
xmlhttp=new XMLHttpRequest();
} else {
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=function(){
if(xmlhttp.readyState==4 && xmlhttp.status==200){
var string = xmlhttp.responseText;
obj = JSON.parse(string);
document.getElementById("myDiv").innerHTML = obj.Children;
}
}
xmlhttp.open("GET","r0.json",true);
xmlhttp.send();
return obj;
}
しかし、関数を呼び出して obj を渡すと、次のようになります。
var obj = loadXMLDoc();
initGL(canvas);
initShaders();
initBuffers(obj);
関数 initBuffers に値を渡すことはできません。なぜそれが起こったのですか?どうすれば解決できますか?ありがとう。