私は2つのオブジェクトを書きました。1 つは List と呼ばれ、もう 1 つは Car と呼ばれます。
function Car()
{
this.make="";
this.year="";
}
function List()
{
this.cars = [];
}
また、XML ファイルの情報を読み取り、List オブジェクト内の car 配列に格納するオブジェクト List のメソッドである別の関数があります。
List.prototype.readXML = function()
{
var i = 0;
$.get('mydata.xml', function(xml){
$(xml).find("item").each(function(){
//Bug Point!!!
this.cars.push(new Car()); //Push a Car object into array
this.cars[i].ID = ($(this).attr("ID"));
});
});
}
ただし、これは機能しません。デバッグで車が定義されていないことが毎回わかります...これの代わりに var を使用して車を定義しようとしました。そして、cars.push の代わりに this.cars.push を削除しようとしました。しかし、それでも車が定義されていないと言っています。
この問題では、変数のスコープに問題がある可能性があると思います。誰かが私にそれを行う方法を教えてもらえますか?
ありがとうございました!