Estoy intentando recorrer una de mis carpetas de marcadores y registrar el título y la URL de los marcadores de la matriz. Cada vez que intento registrar la matriz para realizar pruebas, un objeto no aparece en absoluto, nada es nulo o indefinido. Los primeros 2 registros muestran los arreglos con su ubicación designada en nodeTree. ¿Qué me falta en la función para devolver el título y la url de cada marcador a la consola?
chrome.bookmarks.getTree(function(bmTree){ bmTree.forEach(function(node){ console.log(node); // * Variables are hardcoded for development // * reaches Resources folder in Coding Folder // TODO: declare variable = to userInput from bookmark tree let list = node.children[0].children[2].children[1]; console.log(list); // Retrieve bookmarks title and url for (let i = 0; i < list.length; i++){ const bkmk = [ list.children[i].title, list.children[i].url ]; console.log(bkmk); }; }); }) };La respuesta fue un ajuste simple, en lugar de usar list.length , necesitaba usar list.children.length . Ejemplos de código a continuación:
Original:
chrome.bookmarks.getTree(function(bmTree){ bmTree.forEach(function(node){ console.log(node); // * Variables are hardcoded for development // * reaches Resources folder in Coding Folder // TODO: declare variable = to userInput from bookmark tree let list = node.children[0].children[2].children[1]; console.log(list); // Retrieve bookmarks title and url for (let i = 0; i < list.length; i++){ const bkmk = [ list.children[i].title, list.children[i].url ]; console.log(bkmk); }; }); })Fijado:
const getBookmarks = () =>{ chrome.bookmarks.getTree(function(bmTree){ bmTree.forEach(function(node){ console.log(node); // * Variables are hardcoded for development // * reaches Resources folder in Coding Folder // TODO: declare variable = to userInput from bookmark tree let list = node.children[0].children[2].children[1]; console.log(list); // Retrieve bookmarks title and url for (let i = 0; i < list.children.length; i++){ var bkmk = [list.children[i].title, list.children[i].url]; console.log(bkmk); }; }); })