这只是出于好奇,因为我以编写游戏为生,而不是 Web 应用程序。
Chrome 扩展 API(chrome.*
家族)几乎完全由回调设置器组成的原因是什么?我说的是这个乍一看似乎滥用闭包的编程模型:
// do something with the Tab object of an activated tab
chrome.tabs.onActivated.addListener(function (activeInfo) {
chrome.tabs.get(activeInfo.tabId, function(theTab) {
foo(theTab);
});
});
我习惯于让 getter 简单地返回请求的值,然后发现这很有趣。这是因为所有这些方法(例如getLastFocused
这里)实际上只为浏览器引擎安排异步任务吗?