gpt4 book ai didi

javascript - 下一行丢失 Javascript 数组

转载 作者:行者123 更新时间:2023-12-03 11:16:15 26 4
gpt4 key购买 nike

所以我面临这个问题,对我来说这似乎很奇怪。似乎无法理解这里发生了什么。我创建一个新数组。将其作为参数传递给填充它的函数。然后在控制台上记录该阵列。它正确显示值。但在下一行,如果我记录数组的长度,它会给我一个 0

} else {
var path = new Array();
fetchPath(arr[index].parentId,path);
console.log(path);
console.log(path.length);
}

这是 fetchPath

function fetchPath( id, path ) {    
chrome.bookmarks.getSubTree(id, function(subtree) {
path.push(subtree[0].title);
if(subtree[0].hasOwnProperty('parentId')) {
fetchPath(subtree[0].parentId,path);
}
});

这是我在控制台上得到的内容

Array[4]
0:"India"
1:"News"
2:"Bookmarks Bar"
3:""
length:4
>_proto_:Array[0]

0

为什么长度报告为零?事实上,无论我尝试对数组做什么,它都会失败,因为我已经完全丢失了它。我已将整个 JS 文件放在这里 http://jsfiddle.net/1u4zngko/

最佳答案

getSubTree方法采用一个不会立即执行的回调函数。您的 fetchPath 方法在回调执行之前返回,因此路径尚未更新。

关于javascript - 下一行丢失 Javascript 数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27334698/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com