[英]Wait till function finishes in recursive function
鑒於我有一個遞歸方法:
tests = {
add: function (data, option, dataSet) {
if(option) {
dataSet.forEach(function (values) {
this.add(values.data, false);
}, this);
}
console.log(data.name)
}
}
我會使用
tests.add({name: 'test1'}, true, [{data: {name: 'test2'}}]);
我認為在所有情況下,這都將在“ test1”之前記錄“ test2”,但是在很多情況下,這不會發生。 據我所知,forEach函數應該阻止其他行的執行,但這根本不會發生。
上下文:代碼應在網頁上添加某些組件。 這些組件可以依賴於其他組件(位於dataSet中)。 這些依存關系應始終首先遞歸添加。
有任何想法嗎?
這種不一致的原因是console.log
不是同步功能。 在這里閱讀更多
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.