Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

109
Views
Acceder a valores booleanos dentro de objetos en una matriz

Hola, soy un principiante que aprende javascript (esta es mi primera pregunta) y he pasado horas tratando de resolver lo siguiente. No puedo encontrar una respuesta en línea, por lo que cualquier ayuda sería muy apreciada :)

Tengo una lista de libros que son objetos dentro de una matriz. Las propiedades son el nombre (el valor es una cadena) y si el libro es el más vendido o no (el valor es un valor booleano). Vea abajo

 const books = [ { name: 'Book 1', bestSelling: true,}, { name: 'Book 2', bestSelling: false,}, { name: 'Book 3', bestSelling: true,}, ];

Lo que intento hacer es acceder a los valores más vendidos de la matriz. En primer lugar, ¿cómo haría esto?

En segundo lugar, ¿cómo escribiría una función que, si hubiera al menos un libro que no fuera el más vendido, devolvería falso en general, y si todos los artículos dentro de la matriz fueran los más vendidos, devolvería verdadero?

Se me ocurrió lo siguiente, pero no parece funcionar:

 let won = 0 for (let i = 0; i> books.length; i++) { if (books[I].bestSeller === false) { return false; } } return true; }

¿Algunas ideas? Gracias por adelantado.

about 4 years ago · Juan Pablo Isaza
2 answers
Answer question

0

Use books[index].bestSelling para acceder a los booleanos y puede usar Array#every() para verificar si todos los libros son los más vendidos; devuelva true ; de lo contrario, devuelva false .

 const books = [ { name: 'Book 1', bestSelling: true}, { name: 'Book 2', bestSelling: false}, { name: 'Book 3', bestSelling: true} ]; //accessing booleans books[i].bestSelling eg console.log( books[0].bestSelling ); //function to return true only if all books are best selling function isBestSeller(books) { return books.every(book => book.bestSelling); } console.log( isBestSeller( books ) );

NOTA:

return books.every(book => book.bestSelling); es equivalente a:

 return books.every(function(book) { return book.bestSelling; });

Y toda la función se puede reescribir como:

 const isBestSeller = books => books.every(book => book.bestSelling);
about 4 years ago · Juan Pablo Isaza Report

0

Lo que intento hacer es acceder a los valores más vendidos de la matriz. En primer lugar, ¿cómo haría esto?

Puede lograrlo mediante el uso del método Array.filter() .

 const books = [ { name: 'Book 1', bestSelling: true,}, { name: 'Book 2', bestSelling: false,}, { name: 'Book 3', bestSelling: true,}, ]; const bestSellingBooks = books.filter((obj) => obj.bestSelling); console.log(bestSellingBooks);

En segundo lugar, ¿cómo escribiría una función que, si hubiera al menos un libro que no fuera el más vendido, devolvería falso en general, y si todos los artículos dentro de la matriz fueran los más vendidos, devolvería verdadero?

Puede lograr esto usando el método Array.some() .

 const books = [ { name: 'Book 1', bestSelling: true,}, { name: 'Book 2', bestSelling: false,}, { name: 'Book 3', bestSelling: true,}, ]; const bestSellingBooks = books.some((obj) => !obj.bestSelling); console.log(bestSellingBooks ? false : true);

about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!