我不太熟悉javascript中的回调函数以及它们如何处理数据。
我想在谷歌浏览器中实现类似的东西
function getBookmarkBar()
{
chrome.bookmarks.getChildren('1',function(bookmarkNodes)
{
return bookmarkNodes;
});
}
function getOtherBookmarks(folderId)
{
chrome.bookmarks.getChildren(folderId,function(bookmarkNodes)
{
return bookmarkNodes;
});
}
function doprocessing(){
{
bookmarkbarNodes=getBookmarkBar();
otherNodes=getOtherBookmarks('2');
//do some processing for bookmarkbarNodes and otherNodes
}
有可能(或尽可能接近)这样做吗? 现在我通过一个函数来做这个,但由于检索和修改逻辑的耦合,这将是个坏主意:
function process{
chrome.boomarks.getChildren('1',function(bookmarkNodes){
chrome.bookmarks.getChildren('2',function(otherNodes){
//do processing
});
});
在通用函数中编写上面的代码将使其具有高度可重用性。
答案 0 :(得分:0)
无法同步功能。另外,这样做是个坏主意,因为你会阻止程序直到函数完全执行。
回调是一件好事。 API完全不同步是有充分理由的。 他们不希望您同步这些功能。