Seleccionar dinámicamente un método de un objeto en JavaScript

 

 

 

Seleccionar dinamicamente un metodo de un objeto en javascript 1

Aprenda a acceder a un método de un objeto de forma dinámica en JavaScript

A veces tienes un objeto y necesitas llamar a un método, o a un método diferente, dependiendo de alguna condición.

Por ejemplo, tienes un carobjeto y quieres hacerlo drive()o park()hacerlo, dependiendo del driver.sleepyvalor.

Si el conductor tiene un nivel de sueño superior a 6, debemos aparcar el coche antes de que se duerma mientras conduce.

Aquí te explicamos cómo lograr esto con una if/elsecondición:

 

if (driver.sleepy 6) { car.park()} else { car.drive()}

Vamos a reescribir esto para que sea más dinámico.

Podemos usar el operador ternario para elegir dinámicamente el nombre del método y obtenerlo como valor de cadena.

Usando corchetes podemos seleccionarlo entre los métodos disponibles del objeto:Te recomendamos Juegos gratis para movil

car[driver.sleepy 6 ? 'park' : 'drive']

Con la declaración anterior obtenemos la referencia del método. Podemos invocarlo directamente añadiendo los paréntesis:

car[driver.sleepy 6 ? 'park' : 'drive']()

Tips para principiantes de JavaScript




Tal vez te puede interesar:

  1. Cómo generar un número aleatorio entre dos números en JavaScript
  2. Cómo esperar el evento DOM listo en JavaScript simple
  3. Cómo determinar si una fecha es hoy en JavaScript
  4. Cómo contar el número de propiedades en un objeto JavaScript

Seleccionar dinámicamente un método de un objeto en JavaScript

A veces tienes un objeto y necesitas llamar a un método, o a un método diferente, dependiendo de alguna condición. Aprenda a acceder a un método de un obje

programar

es

2025-01-17

 

Seleccionar dinamicamente un metodo de un objeto en javascript 1
Seleccionar dinamicamente un metodo de un objeto en javascript 1

Si crees que alguno de los contenidos (texto, imagenes o multimedia) en esta página infringe tus derechos relativos a propiedad intelectual, marcas registradas o cualquier otro de tus derechos, por favor ponte en contacto con nosotros en el mail [email protected] y retiraremos este contenido inmediatamente

 

 

Update cookies preferences