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

139
Views
¿Por qué no tengo que declarar la variable en javascript for loop?

en javascript, ¿por qué podemos usar variables que no han sido declaradas (es decir, const, let, var) en el ciclo for? código de ejemplo a continuación:

 function testFunc(items) { for (item of items) { console.log(item) } }

Esperaría que el código anterior se equivoque. ¿No necesitamos declarar la variable con una de las palabras clave const , let y var ? Ejemplo a continuación:

 function testFunc(items) { for (const item of items) { console.log(item) } }

about 4 years ago · Santiago Trujillo
1 answers
Answer question

0

En modo no estricto, no arrojará un error. Simplemente creará un item de variable global para la ventana:

 function testFunc(items) { for (item of items) { console.log(item) } } testFunc([1,2,3]) console.log(window.item) //property created in the window object console.log(item) //global variable

Aunque no puede obtener el valor del item antes de que se asigne (ReferenceError), si tiene una asignación como item=1 en modo no estricto, creará una variable (alcance global) si aún no está definida. El bucle for en este caso es item=1 , item=2 , item=3 . Por lo tanto, se permite obtener el valor del item (como en console.log(item) ).
Y como puede ver en la salida, el valor del item después del bucle es 3 .


Pero si solo agrega una declaración de "uso estricto", arroja un error

 "use strict" function testFunc(items) { for (item of items) { console.log(item) } } testFunc([1,2,3]) //throws ReferenceError

about 4 years ago · Santiago Trujillo 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!