Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

124
Views
Cómo es posible tener la misma variable y nombre de función en JavaScript

Usualmente usamos React.memo de la siguiente manera

 const MyComponent = React.memo(function MyComponent(props) { /* render using props */ });

Tenemos una función MyComponent y una variable MyComponent en el mismo ámbito. ¿Por qué la sintaxis es correcta y no tenemos ningún error de tiempo de ejecución como Uncaught SyntaxError: Identifier 'MyComponent' has already been declared ?

about 4 years ago · Juan Pablo Isaza
1 answers
Answer question

0

Dada una declaración de función (no tiene una, esto es para comparar):

 function example() { ... }

El example del identificador hace dos cosas distintas.

  1. Establece el nombre de la función en el example .
  2. Crea una variable llamada example y le asigna la función.

Es importante distinguir entre el nombre de una función y cualquier variable que haga referencia a ella.

Podrías continuar haciendo:

 const foo = example;

Así que ahora tiene una función llamada example y dos variables ( foo y example ) que se pueden usar para acceder a ella.


La sintaxis que tiene en la pregunta es una expresión de función, no una declaración de función.

Una de las diferencias entre las expresiones y declaraciones de funciones es que el identificador solo nombra la función. No crea una variable del mismo nombre. (Otra diferencia es que el identificador de las expresiones es opcional, tiene una expresión de función con nombre).

Dado que no crea una variable, no hay conflicto con const MyComponent .

about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!