好所以我有一个变量这是一个JavaScript对象,其中包含对象本身。无法从onclick获取javascript对象的值(返回undefined)
我有一个onclick功能,如下所示:
if (localStorage.cal) {
var dat = JSON.parse(localStorage.cal);
console.log(dat);
eventMap = dat.map;
eventList = dat.list;
}
$(delAppearance).on('click', function(){
if (lastKey && eventMap[lastKey]) {
var e = eventMap[lastKey];
eventList[lastKey] = undefined;
delete eventList[lastKey];
calObj.removeEvents(function(event){
return new Date(event.date).toUTCString() == moment(lastKey)._d.toUTCString();
});
localStorage.cal = JSON.stringify({list:eventList, map:eventMap});
lastKey = null;
$(delAppearance).hide();
}
});
所以最后一个键当前设置为06/20/2017
。内有06/20/2017
的记录(请看下图);出于某种原因,当我尝试访问eventMap[lastKey]
我得到undefined
,我不能在if(lastKey && eventMap[lastKey])
进入功能(看看。
任何帮助,将不胜感激。
UPDATE
所以它看起来像它来自这个:
var calClick = function(target){
clearState();
var d = new Date(target.date._d);
var prettyDate = ((d.getMonth() + 1) + '/' + d.getDate() + '/' + d.getFullYear());
var hr = new Date().getHours();
var min = new Date().getMinutes();
$(aDate).val(prettyDate);
var s;
console.log(target);
if (s = eventMap[prettyDate]) {
lastKey = prettyDate;
$(delAppearance).show();
setCurrentState(s);
}
}
它在这里永远不会到达lastKey。这似乎是同样的问题,但。我必须以错误的方式访问eventMap。
你在哪里分配eventMap到地图对象? – mjw
@mjw固定问题 – jkushner
是最后一个定义的关键吗? – MBurnham