Ao executar o código abaixo:
const listaLivros2 = require('./arrayOrdenado')
function busca(array, de, ate, valorBuscado) {
const meio = Math.floor((de + ate)/ 2);
const atual = array[meio];
if (valorBuscado === atual.preco) {
return meio;
}
if (valorBuscado < atual.preco) {
return busca(array, de, meio - 1, valorBuscado );
}
if (valorBuscado > atual.preco){
return busca(meio + 1, ate, valorBuscado);
}
}
console.log(busca(listaLivros, 0, listaLivros.length - 1, 40))
O console retorna o seguinte erro:
E:\Douglas\Estudo\JS -BackEnd\Algoritimos II\aula4\busca.js:7 if (valorBuscado === atual.preco) { ^
TypeError: Cannot read properties of undefined (reading 'preco') at busca (E:\Douglas\Estudo\JS -BackEnd\Algoritimos II\aula4\busca.js:7:32) at busca (E:\Douglas\Estudo\JS -BackEnd\Algoritimos II\aula4\busca.js:16:16) at Object. (E:\Douglas\Estudo\JS -BackEnd\Algoritimos II\aula4\busca.js:21:13) at Module.compile (node:internal/modules/cjs/loader:1112:14) at Module.extensions..js (node:internal/modules/cjs/loader:1166:10) at Module.load (node:internal/modules/cjs/loader:988:32) at Module.load (node:internal/modules/cjs/loader:834:12) at Function.executeUserEntryPoint [as runMain] (node:internal/modules/runmain:77:12) at node:internal/main/run_main_module:17:47
Node.js v18.4.0
Comparei com o dos outros tópicos mas não consegui fazer dar certo