Función de tipo en JavaScript

En este tutorial, aprenderá sobre el tipo de función, que es el tipo de todas las funciones en JavaScript.

Versión inglesa: https://www.javascripttutorial.net/javascript-function-type/

Todas las funciones de JavaScript son objetos. Son ejemplos de hacer tipo Função. Dado que las funciones son objetos, tienen propiedades y métodos como cualquier objeto.

Propiedades de la función

Cada función tiene dos propiedades: lengthyprototype

  • length (longitud) determina el número de argumentos específicamente nombrados en la declaración de función.
  • prototype (prototipo) se refiere al objeto de función real.

La función swap()acepta dos argumentos xy, ypor lo tanto, la propiedad lengthdevuelve 2.

Discutiremos la propiedad prototypecon más detalle en el tutorial de prototipos.

Normalmente, una función se invoca simplemente llamándola. Por ejemplo:

Y la función se puede llamar como constructor para crear un objeto:

ES6 agregó una nueva propiedad llamada target.newque le permite detectar si una función fnse llama como una función normal fn()o como un constructor usando el operador new fn().

Si una función se llama normalmente fn(), se new.targetllamará undefined.

Por otro lado, si la función se llama usando la palabra clave, newse referirá al constructor:

Métodos de función: apply (), call () y bind ()

Un objeto de función tiene tres métodos:

  • apply()
  • call()
  • bind()

Los métodos apply()y call()llaman a una función con un valor y argumentos dados.

La diferencia entre apply()y call()es que debes pasar los argumentos al método apply()como un objeto de matriz , mientras pasas los argumentos a la función call()individualmente. Por ejemplo:

Primero, declaramos dos objetos caty dogcon dos propiedades. A continuación, declaramos la función say()que acepta un argumento.

Podemos llamar a la función a say()través del método de la appy()siguiente manera:

El primer argumento del método apply()es el objeto cat, por lo que el objeto thisen la función say()se define como un objeto cat. El segundo argumento es un argumento similar a una matriz , como lo indica el uso de corchetes [].

Si pasamos el objeto dog, la thisfunción in say()se definirá como dog, así:

La salida es diferente porque o typey o soundson las propiedades del objeto dogdentro de la función say().

El método call()es similar al método apply(), excepto por la forma en que pasa los argumentos:

El método bind ()

El método bind()crea una nueva instancia de función cuyo valor está vinculado al objeto que proporciona. Considere el siguiente ejemplo:

Primero, defina un objeto llamado car:

Luego, defina otro objeto llamado aircraft:

El objeto aircraftno tiene el método start(). Para iniciar uno aircraft, puede utilizar el método bind()del método del start()objetocar:

En esta declaración, cambiamos el valor thisdentro start()del método cardel objeto al objeto aircraft. El método bind()devuelve una nueva función que se asigna a la variable taxiing.

Ahora puede llamar al método a start()través de la variable taxiing:

Mostrará el siguiente mensaje:

El siguiente ejemplo usa el método call()para llamar al método del start()objeto aircraft:

Como puede ver, el método bind()crea una nueva función que puede ejecutar más tarde mientras el método call()ejecuta la función inmediatamente. Esta es la principal diferencia entre los métodos bind()y call().

Técnicamente, el objeto aircrafttoma prestado el método del start()objeto a cartravés del método bind(), call()o apply().

Por esta razón, los métodos bind(), call()y apply()también se conocen como funciones de préstamo.

currículum

  • Todas las funciones son instancias del tipo Function, que son objetos. Tienen propiedades y métodos.
  • Una función tiene dos propiedades importantes: namee prototype.
  • Una función también tiene tres métodos importantes: call(), apply()y bind().

Consulte una serie de otros tutoriales de JavaScript que escribí haciendo clic en el enlace a continuación:

Tutoriales de JavaScript

Suggested posts

¿Qué hace que un podcast sea influyente?

¿Qué hace que un podcast sea influyente?

La semana pasada noté un comunicado de prensa, enviado a través de PressGazette (un sitio web de noticias de los medios británicos). El artículo anunciaba que Acast, la empresa de publicidad y alojamiento de podcasts de Scandi, lideraría un consorcio de editores "probablemente los más influyentes" en podcasting.

El asesinato de Jordan Neely y el problema del racismo “patriótico”

¿Puede Estados Unidos dar el paso esencial de no equiparar el comportamiento racista con ser un buen estadounidense?

El asesinato de Jordan Neely y el problema del racismo “patriótico”

[Alerta de activación: este ensayo incluye capturas de pantalla de personas que elogiaron al asesino de Jordan Neely.] Los funcionarios encargados de hacer cumplir la ley finalmente, y quizás a regañadientes, acusaron a Daniel Penny, el hombre que estranguló a Jordan Neely hasta que murió, por ese homicidio.

Related posts

No más contraseñas: cómo las claves de acceso reemplazarán su contraseña

No más contraseñas: cómo las claves de acceso reemplazarán su contraseña

Para evitar ambigüedades se utilizarán los siguientes términos; autenticador; El teléfono móvil que se utiliza para realizar el inicio de sesión en el sitio web; El sitio web o la aplicación que el usuario está utilizando para realizar el servicio de solicitud de inicio de sesión; El proveedor que proporciona el servicio dado, por ejemplo

La actuación en solitario de la chica pelirroja

Por encargo de Hayden, Katie se graba masturbándose.

La actuación en solitario de la chica pelirroja

Era pasada la medianoche cuando Hayden llevó a Katie de regreso a su residencia universitaria después de su velada juntos. Tenía una clase temprano en la mañana y no tenía otra muda de ropa después de haberse quedado con él la noche anterior.

La erosión lenta: revelando las formas en que las personas se desgastan en sus carreras

La erosión lenta: revelando las formas en que las personas se desgastan en sus carreras

En el mundo acelerado y competitivo de hoy, la carrera de uno juega un papel importante en el crecimiento personal, la estabilidad financiera y la satisfacción general con la vida. Sin embargo, muchas personas se encuentran atrapadas en un ciclo implacable de estancamiento e insatisfacción, y su vida profesional se desvanece gradualmente.

"La fosa de las Marianas revelada: revelando las aterradoras verdades ocultas del abismo"

"La fosa de las Marianas revelada: revelando las aterradoras verdades ocultas del abismo"

Introducción: Bienvenidos, valientes lectores, a un viaje que nos llevará a las profundidades más oscuras de nuestro planeta. En este blog, profundizamos en el enigmático mundo de la Fosa de las Marianas, descubriendo sus secretos ocultos y descubriendo las verdades escalofriantes que se encuentran debajo de su superficie.