¿Puedo llamar dinámicamente a un método de objeto que tiene el nombre del método como una cadena? Me lo imagino así:
var FooClass = function() {
this.smile = function() {};
}
var method = "smile";
var foo = new FooClass();
// I want to run smile on the foo instance.
foo.{mysterious code}(); // being executed as foo.smile();
Element implicitly has an 'any' type because expression of type 'string' can't be used to index type 'FooClass'
alguien más?Se puede acceder a las propiedades de los objetos a través de la notación de matriz:
fuente
Cuando llamamos a una función dentro de un objeto, necesitamos proporcionar el nombre de la función como una Cadena.
fuente
El método que se puede llamar con eval
eval("foo." + method + "()");
podría no ser muy bueno.fuente
foo
está{ fields: [{ id: 1 }] }
ymethod
esfields[0]?.id
, pero tuve que eliminarlo()
de su respuesta propuestaMe gustaría dejar aquí un ejemplo para esto. Por ejemplo; Quiero llamar a un método de verificación dinámica al enviar el formulario.
fuente