[英]How to Parse Facebook Graph API “hours” response
我正在使用Facebook Graph API从Facebook页面获取一些数据,但是我不知道如何在“小时”内处理结果,如下所示:
{ "wed_1_open": "17:00", "wed_1_close": "02:00", "thu_1_open": "17:00", "thu_1_close": "02:00", "fri_1_open": "17:00", "fri_1_close": "02:00", "sat_1_open": "12:00", "sat_1_close": "02:00", "sun_1_open": "12:00", "sun_1_close": "20:00" }
因此,我想知道如何解析此结果以获取一些易于阅读的文本,例如“信息”标签中的文本:
wed - fri: 17:00 - 2:00 sat: 12:00 - 2:00 sun: 12:00 - 20:00
预先感谢!!
这是执行此操作的一种方法: http : //jsbin.com/xavaxudi/1/edit?js,console 。
注意:这是我几分钟后写的东西。 如果您要处理大量数据,则可能必须相应地进行优化。
var rawFbData = {
"wed_1_open": "17:00",
"wed_1_close": "02:00",
"thu_1_open": "17:00",
"thu_1_close": "02:00",
"fri_1_open": "17:00",
"fri_1_close": "02:00",
"sat_1_open": "12:00",
"sat_1_close": "02:00",
"sun_1_open": "12:00",
"sun_1_close": "20:00"
};
console.log(rawFbData);
var formattedData = {};
for (var key in rawFbData) {
if (key.substr(-5) === '_open') {
var openDay = key.substr(0, 3);
var openTime = rawFbData[key];
var endTimeKey = key.replace('_open', '_close');
var endTime = rawFbData[endTimeKey];
var formattedDataKey = openTime + ' - ' + endTime;
if (formattedData[formattedDataKey] === undefined) {
formattedData[formattedDataKey] = [];
}
formattedData[formattedDataKey].push(openDay);
}
}
//console.log(formattedData);
for (var formattedDatakey in formattedData) {
var formattedDatakeyLen = formattedData[formattedDatakey].length;
if (formattedDatakeyLen > 1) {
var firstDay = formattedData[formattedDatakey][0];
var lastDay = formattedData[formattedDatakey][formattedDatakeyLen - 1];
console.log(firstDay + ' - ' + lastDay + ': ' + formattedDatakey);
}
else if (formattedData[formattedDatakey].length === 1) {
console.log(formattedData[formattedDatakey][0] + ': ' + formattedDatakey);
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.