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

275
Views
¿Acceder a una propiedad booleana de un objeto en javascript siempre devuelve falso?

Estoy perdiendo la mente. Tengo una matriz de objetos llamada allAvailabilities

 console.log(allAvailabilities[0]);

da como resultado un objeto con varias propiedades, una de las cuales es:

 ... isTrainee: true ...

pero

 console.log(allAvailabilities[0]['isTrainee']); console.log(allAvailabilities[0].isTrainee);

da como resultado

 false false

No entiendo qué me impide acceder al valor real de isTrainee de la propiedad del objeto:

 console.log(typeof(allAvailabilities[0]['isTrainee'])); console.log(typeof(allAvailabilities[0].isTrainee)); console.log(allAvailabilities[0]['isTrainee'].toString()); console.log(allAvailabilities[0].isTrainee.toString());

resultados en:

 boolean boolean false false

¿Cómo es esto posible? ¿Estoy pasando por alto una pieza fundamental de la sintaxis de Javascript? ¿Tiene esto que ver con la clase Boolean como se describe aquí: ¿Por qué !new Boolean(false) es igual a false en JavaScript?

ingrese la descripción de la imagen aquí

El fragmento funciona bien, ¿qué significa esto?

 var allAvailabilities = [{_id: '605a5dd76f007e84f28e35fd', begin: '2021-04-03T18:00:00.000Z', end: '2021-04-03T20:30:00.000Z', season: 'regular', hostModel: 'users', isTrainee: true, season: "regular"}]; console.log(allAvailabilities[0]); console.log(typeof(allAvailabilities[0]['isTrainee'])); console.log(typeof(allAvailabilities[0].isTrainee)); console.log(allAvailabilities[0]['isTrainee'].toString()); console.log(allAvailabilities[0].isTrainee.toString());

¿Cómo puede ser esto? ingrese la descripción de la imagen aquí

La matriz allAvailabilities original proviene de una API, y cada objeto de la matriz se modifica para tener la propiedad isTrainee , inmediatamente antes de llamar al código con el que tengo problemas:

ingrese la descripción de la imagen aquí

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

0

Creo que es porque hay una promesa de modificación asincrónica de isTrainee en el mapa. Creo que cambiar el mapa a for puede resolver el problema. Porque es una función síncrona en lugar de asíncrona.

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!