Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

213
Vistas
Caso de cambio de mecanografiado angular por algunos valores

Solo trato de hacer un cambio por dos valores.

 switch ({'a': val_a,'b': val_b}){ case ({'x','y'}): "some code here" break; }

y esto no funciona... alguna ayuda? ¡Gracias!

over 4 years ago · Santiago Trujillo
3 Respuestas
Responde la pregunta

0

El operador de cambio solo funciona para primitivos, no es posible comparar objetos, pero puede crear primitivos usted mismo, por ejemplo, cadena

 const compareValue = val_a + ' ' + val_b; switch (compareValue){ case 'x y': //"some code here" break; }
over 4 years ago · Santiago Trujillo Denunciar

0

El valor en una declaración de caso debe ser una constante o un literal o una expresión que se evalúe como una constante o un literal . No puede esperar que una declaración de cambio tenga objetos y que las declaraciones de casos subyacentes tengan sus propios objetos y hagan una comparación.

Dicho esto, tiene opciones en javascript que le permiten transformar un objeto (solo con fines de comparación). Un enfoque que seguiría sería así

 let obj = {'a': 'x','b': 'y'}; let obj1={a:'x',b:'y'}; switch(Object.values(obj).join(',')) { case Object.values(obj1).join(','): console.log('evaluation succeeds'); break; }

Entonces, lo que hice fue tomar los valores del objeto y unirlos con una coma (efectivamente, tener una cadena), y en el caso, la declaración hizo lo mismo con otro objeto (para que la comparación pudiera tener lugar)

over 4 years ago · Santiago Trujillo Denunciar

0

switch(true) { case obj1.a == obj2.a && obj1.b == obj2.b: console.log('true'); break; }
over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda