我尝试获取这样的特定对象位置:
workingPlan[selDayName]
workingPlan
对象包含以下结构:
Object {monday: null, tuesday: Object, wednesday: null, thursday: Object, friday: null…}
friday: null
monday: null
saturday: Object
sunday: null
thursday: Object
tuesday: Object
wednesday: null
__proto__: Object
如何查看工作计划包含所有工作日,如下所示的一天:saturday, thursday, tuesday
是工作日'原因是定价并包含start
和end
属性但现在这不重要。
selDayName
包含当前日期,具有以下结构:
fri oct 23 2015 00:00:00 gmt+0000
现在当我这样做时:workingPlan[selDayName]
我希望在工作计划中得到当天的日期,因为我需要为每个运营商显示不可用的时间段。这段代码返回的问题是:
未定义
作为chrome控制台中的响应。我不知道为什么。但我等待这个回复:null.
我做错了什么?
更新 - 完整对象结构:
{
"monday" : null,
"tuesday" : {
"start" : "09:00",
"end" : "18:00",
"breaks" : [{
"start" : "11:20",
"end" : "11:30"
}, {
"start" : "14:30",
"end" : "15:00"
}
]
},
"wednesday" : null,
"thursday" : {
"start" : "09:00",
"end" : "18:00",
"breaks" : [{
"start" : "11:20",
"end" : "11:30"
}, {
"start" : "14:30",
"end" : "15:00"
}
]
},
"friday" : null,
"saturday" : {
"start" : "09:00",
"end" : "18:00",
"breaks" : [{
"start" : "11:20",
"end" : "11:30"
}, {
"start" : "14:30",
"end" : "15:00"
}
]
},
"sunday" : null
}
DATE PARSE
var selDayName = $calendar.fullCalendar('getView')
.start.toString('dddd').toLowerCase();
也许我应该从主题开始插入上面的代码,对不起。
答案 0 :(得分:1)
您的selDayName
是Date
个对象。但是,您的数组包含星期几的数据。你不能简单地通过Date
并期望它能够起作用:)
您可以使用Date.getDay()
方法获取星期日期 - 它会返回0(星期日)到6(星期六)之间的整数。然后,您可以将其映射到您的值。
var daysOfWeek = ["sunday", "monday", "tuesday", "wednesday", "thursday", "friday", "saturday"];
var dayOfWeek = daysOfWeek[selDayName.getDay()]; // "sunday", "tuesday", "friday" etc.
var workingPlanForDay = workingPlan[dayOfWeek]; // null or object, if exists
console.log(workingPlanForDay);
答案 1 :(得分:1)
我已修复此问题:
$calendar.fullCalendar('getView').start.toDate().toString('dddd').toLowerCase();