我如何访问' timestamp'的值?和'用法'在以下示例中,
function executeReadingsQuery(query, postQueryProcessing) {
var d = new $.Deferred();
var processing = function(tx, results) {
var result = [];
var len = results.rows.length;
for ( var i = 0; i < len; i++) {
result.push({
"timestamp" : moment(results.rows.item(i).timeStamp),
"usage" : results.rows.item(i).usage
});
}
if (postQueryProcessing) {
result = postQueryProcessing(result);
}
d.resolve(result);
};
executeQuery(query, processing);
return d;
}
构建查询字符串的函数随后将调用上述函数
function getReadingsInternal(noOfReadings, postQueryProcessing) {
var query = "SELECT * from usage ORDER BY timestamp DESC limit " + noOfReadings.toString();
return executeReadingsQuery(query, postQueryProcessing);
}
然后还有另一个函数可以全局公开整个功能,
getReadings : function(noOfReadings) {
return getReadingsInternal(noOfReadings);
}
原始函数(列出的第一个函数)位于名为WNDatabase的变量中 所以我可以使用看起来像这样的调用来访问该函数
WNDatabase.getReadings(30)
但我希望能够全局访问填充延迟对象的result []数组的timestamp和用法值。 似乎不可能做这样的事情
$.when(WNDatabase.getReadings(30)).done(function() {
for(var i=0; i<7; i++){
console.log(this[i].usage);
}
});
那么在这次活动中会怎么做?