La función Arrow/lambda es una forma concisa de una función normal en Typescript . Las funciones de flecha también se conocen como funciones lambda. Usamos “=>” (símbolo de flecha) en la función de flecha y no usamos la palabra clave ‘función’. Podemos usar este método cuando queremos que nuestro código sea corto y no llamar a la función cada vez.
Sintaxis:
-
Función de flecha que tiene múltiples parámetros:
(param1, param2, ..., paramN) => expression;
-
Función de flecha sin parámetros:
() => expressions;
Ejemplo 1 (función de flecha con parámetros): en el siguiente código, creamos una función de flecha con dos parámetros name y roll_no. La función devuelve una string que contiene dos parámetros. Usamos {} corchetes y devolvemos la palabra clave.
Javascript
let string1 = (name: string, roll_no: number) => { return "i am " + name + " and my roll no is " + `${roll_no.toString()}`; }; console.log(string1("srinivas", 49));
Producción:
i am srinivas and my roll no is 49
Generalmente, cuando solo tenemos una declaración para ejecutar, no necesitamos usar llaves {} ni devolver palabras clave. Podemos escribir el código de la siguiente manera:
Javascript
let string1 = (name: string, roll_no: number) => "i am " + name + " and my roll no is " + `${roll_no.toString()}`; console.log(string1("srinivas", 49));
Producción:
i am srinivas and my roll no is 49
Ejemplo 2 (función de flecha sin parámetros): este es un ejemplo en el que la función de flecha no toma parámetros y devuelve una string.
Javascript
let str1 = () => "this is geeksforgeeks"; console.log(str1());
Producción:
this is geeksforgeeks
Ejemplo 3 (Función de flecha en una clase): Se crea una clase que tiene dos propiedades, nombre de tipo string y CGPA de tipo número. También hay un método de clase que devuelve y muestra una string de detalles del estudiante. Este ejemplo muestra que las funciones de flecha también se pueden usar en las clases.
Javascript
class StudentDetail { name: string; cgpa: number; constructor(name: string, cgpa: number) { this.name = name; this.cgpa = cgpa; } displayString = () => console.log("student_name : " + this.name + " student_cgpa : " + this.cgpa); } let student1 = new StudentDetail("sarah", 9.45); student1.displayString();
Producción:
student_name : sarah student_cgpa : 9.45
Publicación traducida automáticamente
Artículo escrito por isitapol2002 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA