私のウェブサイトには次のコードがあります。
function GroupObject(GroupID, GroupColor, GroupName, CalendarID, UserEnable, IrcChannel) {
this.uid = GroupID;
this.color = GroupColor;
this.groupname = GroupName;
this.calendarid = CalendarID;
this.userenable = UserEnable;
this.ircchannel = IrcChannel;
}
function GetGroupObjects(callback) {
var GlobalDB = [];
$.getJSON("Some Data From Google Docs",
function (data) {
$.each(data.feed.entry, function (i, entry) {
GlobalDB.push(new GroupObject(entry.gsx$uid.$t,
"000000",
SanitizeInputText(entry.gsx$group.$t),
SanitizeInputCalID(entry.gsx$calendarid.$t),
true,
SanitizeInputText(entry.gsx$ircchannel.$t)))
});
console.log(GlobalDB[0]);
console.log(GlobalDB[0].color);
callback(GlobalDB);
});
};
新しく作成された GlobalDB のすべてのパラメーターは、パラメーター「color」を除いて正しいです。console.log(GlobalDB[0]) は以下を返します:
GroupObject
calendarid: "CalOfTNG"
color: "AB8B00"
groupname: "Austin TNG"
ircchannel: "AustinTNG"
uid: "TNG"
userenable: true
__proto__: GroupObject
Chrome と Firefox の両方で、色 "AB8B00" に同じ値をもたらします。理由はありますか?上記のコードから、0 になるはずです。console.log(GlobalDB[0].color) は 000000 を返します。しかし、コールバックから戻るときに GlobalDB を使用すると、再び AB8B00 が返されます。
一方、ユーザーの有効化は問題なく機能します。Chrome と Firefox の両方で失敗するため、パラメーター .color の問題の原因を見つけることができません。
前もって感謝します。