0
我正在嘗試做一個簡單的任務。這裏是我的函數,我在URL鏈接作爲參數。我閱讀鏈接,將其廢棄爲標題和標題等數據。那麼我只是試圖將數據存儲在mongo中。 由於某種原因,查看這個代碼控制檯先打印y然後再打印x。 爲什麼javascript不編寫代碼? 任何幫助我如何能夠將這些數據存儲在全局變量中。 感謝 我相信這是一個回調的錯誤..變量值未被存儲,js是否在編寫代碼時編寫它?
insertNewItem(link){
check(link, String);
var xray = new Xray();
var tname;
xray(link, 'title')(function(err, title) {
tname = title;
console.log('x', tname);
});
var header;
xray(link, 'h1')(function(err, h1) {
header = h1;
});
console.log('y',tname);
Items.insert({
url: link,
name: tname,
bio: header
});
}
由於在回調中記錄了'x',執行順序完全取決於'Xray'對象的實現。這是任何人都可以對這段代碼分離出來的唯一有意義的東西。您應該瞭解回調如何工作以及異步執行的含義。 –
非常感謝你尼爾,使很多感覺..有沒有什麼方法可以繞過我的設計我可以在這裏完成我的最終目標。 bascially將值存儲在某個變量中並將其添加到數據庫中。也許創建一個外部函數來解析並返回值作爲參數.. @NielsKeurentjes – ankibunkers