Cam*_*ilo 1 javascript facebook facebook-graph-api
我正在使用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);
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
308 次 |
| 最近记录: |