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

264
Views
Operaciones de matriz: ¿Qué forma preferirá, por qué? ¿Hay alguna forma mejor?

Para verificar si existe un elemento en una matriz, ¿qué método es mejor? ¿Hay otras formas de hacer una comprobación booleana?

 type ObjType = { name: string } let privileges: ObjType[] = [{ name: "ROLE_USER" }, { name: "ROLE_ADMIN" }, { name: "ROLE_AUTHOR" }]; //method 1 const hasAdminPriv = privileges instanceof Array && privileges.find((ele: ObjType) => ele.name === "ROLE_ADMIN"); //method 2 const found = privileges instanceof Array && privileges.find((ele: ObjType) => ele.name === "ROLE_ADMIN") !== undefined; //method 3 const privilSet = new Set<string>(); privileges.forEach((element: ObjType)=> privilegeSet.add(element.name)); //method 4 const privilegeSet2 = new Set<string>(privileges.map((element: ObjType) => element.name)); console.log(privilegeSet2.has("ROLE_ADMIN"));
about 4 years ago · Juan Pablo Isaza
1 answers
Answer question

0

Lo más probable es que dependa de la forma en que quieras usar esto.

La conversión de conjunto podría ser beneficiosa, si tiene la intención de consultar varias cosas a la vez.

Tal vez prefiera usar some para su consulta, si realmente solo está interesado si un valor está en la matriz y no para el resto del objeto.

También sugeriría echar un vistazo a las includes , ya que eso puede ser exactamente lo que está buscando, al menos para objetos triviales en una matriz.

Dicho esto, si se ve obligado a usar uno de los métodos provistos, diría que el método 2 es mejor si desea verificar un valor y el método 4 si desea consultar múltiples valores o puede almacenar en caché el conjunto generado para grandes matrices y consultas relativamente frecuentes.

Nota al margen:

Si todo su código está escrito a máquina, realmente no veo por qué usaría la privileges instanceof Array . Por supuesto, esto puede ser necesario si la matriz proviene de un código js o un archivo, pero incluso entonces argumentaré que debe verificar el tipo cuando recibe la matriz y luego asumir que es una matriz si se escribe de esa manera. .

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!