2015-10-14 66 views
0

我想使用chrome.alarms.getAll()方法來獲取我可以使用的變量的警報數量,但由於它的範圍,我無法做到這一點。我不是很確定如何解決問題,任何人都可以幫忙嗎?代碼不工作:如何將chrome.alarms.getAll回調函數設置爲變量?

function query() { 
    var count; 
    chrome.alarms.getAll(function(alarms) { count = alarms.length; }); 
    return count; 
} 

var numAlarms = query(); //undefined 

numAlarms返回undefined,即使我有2個報警,可以看到它時,我使用

chrome.alarms.getAll(function(alarms) { console.log(alarms) }; 

回答

1

使用callback功能query

function query(callback) { 
    var count; 
    chrome.alarms.getAll(function(alarms) { callback(alarms.length) }); 
} 

query(function(count) { 
    var numAlarms = count; 
});