elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Guía actualizada para evitar que un ransomware ataque tu empresa


+  Foro de elhacker.net
|-+  Programación
| |-+  Desarrollo Web (Moderador: #!drvy)
| | |-+  ¿Que tanto sabes de los entornos léxicos de javascript?
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: ¿Que tanto sabes de los entornos léxicos de javascript?  (Leído 7,521 veces)
MinusFour
Moderador Global
***
Desconectado Desconectado

Mensajes: 5.529


I'm fourth.


Ver Perfil WWW
¿Que tanto sabes de los entornos léxicos de javascript?
« en: 25 Julio 2021, 16:16 pm »

El objetivo del ejercicio es comprender que es lo que ocurre en cada segmento de código. Todos están relacionados al tema aunque algunos más que otros.

1.
Código
  1. (function test(){ console.log('ok'); })
  2. test();

2.
Código
  1. test()
  2. function test(){ console.log('ok'); }

3.
Código
  1. (function test(t = eval('var t = 1;')){
  2.    console.log(t);
  3. })();

4.
Código
  1. (function test(t = eval('var c = 1;')){
  2.    console.log(c);
  3.    var c = 0;
  4. })();

5.
Código
  1. (function test(){
  2.    x();
  3.    function x(){ console.log(1); };
  4.    function x(){ console.log(2); };
  5. })();

6.
Código
  1. (function test(){
  2.   x();
  3.   function x(){ console.log(1); };
  4.   {
  5.       x();
  6.       function x(){ console.log(2); };
  7.   }
  8.   x();
  9. })();

7.
Código
  1. new class {
  2.    constructor() {
  3.        x();
  4.        function x(){ console.log(1); }
  5.        function x(){ console.log(2); }
  6.    }
  7. }

8.
Código
  1. new class {
  2.    constructor() {
  3.        function x(){ console.log(1); }
  4.        {
  5.            function x(){ console.log(2); }
  6.        }
  7.        x();
  8.    }
  9. }

9.
Código
  1. new class {
  2.    constructor() {
  3.        {
  4.            function x(){ console.log('ok'); }
  5.        }
  6.        x();
  7.    }
  8. }

10.
Código
  1. new class {
  2.    constructor() {
  3.        {
  4.            function x(){ console.log(1); }
  5.            function x(){ console.log(2); }
  6.            x();
  7.        }
  8.    }
  9. }

11.
Código
  1. (function test(c){
  2.   var c;
  3.   console.log('ok');
  4. })();

12.
Código
  1. (function test(c){
  2.   let c;
  3.   console.log('ok');
  4. })();


13.
Código
  1. (function test(){
  2.   var c;
  3.   var c;
  4.   console.log('ok');
  5. })();

14.
Código
  1. (function test(c, c){
  2.   console.log(c);
  3. })(1,2);

15.
Código
  1. (function test(c, c = 2){
  2.   console.log(c);
  3. })(1);

16.
Código
  1. (function test(){
  2.   console.log(arguments);
  3. })();

17.
Código
  1. (() => console.log(arguments))();

18.
Código
  1. (function test(arguments){
  2.   console.log(arguments);
  3. })();

19.
Código
  1. (function test(...c){
  2.   console.log(arguments);
  3. })();

20.
Código
  1. (function test(){
  2.    let arguments;
  3.    console.log(arguments);
  4. })();

21.
Código
  1. (function test(){
  2.   var arguments;
  3.   console.log(arguments);
  4. })();

22.
Código
  1. (function test(){
  2.   var c;
  3.   let c;
  4. })();

23.
Código
  1. (function test(){
  2.   var c;
  3.   {
  4.       let c;
  5.   }
  6. })();

24.
Código
  1. (function test(){
  2.   let c;
  3.   {
  4.       var c;
  5.   }
  6. })();

25.
Código
  1. (function test(){
  2.   let c;
  3.   if(false){
  4.       var c;
  5.   }
  6. })();

Las respuestas las publicare a lo largo del día.

Edit: Quizás el tema vaya mejor en Desafios - Wargames o en Scripting. Pero algunas de las preguntas están relacionadas con Desarrollo Web (y esto es decir mucho).


« Última modificación: 25 Julio 2021, 16:20 pm por MinusFour » En línea

MinusFour
Moderador Global
***
Desconectado Desconectado

Mensajes: 5.529


I'm fourth.


Ver Perfil WWW
Re: ¿Que tanto sabes de los entornos léxicos de javascript?
« Respuesta #1 en: 28 Julio 2021, 02:55 am »

Mi explicación de cada código.

https://gist.github.com/MinusFour/a4a3143edc0f04cc5bd57fe500fd20ba


En línea

[u]nsigned


Desconectado Desconectado

Mensajes: 2.397

JS/Node developer


Ver Perfil WWW
Re: ¿Que tanto sabes de los entornos léxicos de javascript?
« Respuesta #2 en: 11 Agosto 2021, 00:02 am »

Excelente, muchas de estas cosas entran en las preguntas de entrevista técnica, tambien te suelen poner 'trampitas' con los closures y el hoisting.   ;-)
En línea

No hay atajo ante la duda, el misterio se hace aquí...
Se hace carne en cada uno, el misterio es existir!
carlmarx

Desconectado Desconectado

Mensajes: 2


Ver Perfil
Re: ¿Que tanto sabes de los entornos léxicos de javascript?
« Respuesta #3 en: 24 Abril 2023, 10:11 am »

Excelente, muchas de estas cosas entran en las preguntas de entrevista técnica, tambien te suelen poner 'trampitas' con los closures y el hoisting.   ;-)

Sucede. En general, todo nuestro departamento fue despedido por errores en el desarrollo de programas en Java. Al final resultó que, generalmente usan una versión obsoleta. No sé dónde reclutaron a estas personas en absoluto. Luego recurrimos a desarrolladores externos https://qawerk.es/servicios/pruebas-de-aplicaciones-de-escritorio/ para probar todo después del lanzamiento. Esto cambió radicalmente la situación.
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
entornos visuales para java
Java
Bleach@lex 5 5,575 Último mensaje 22 Noviembre 2010, 14:53 pm
por javierete
Desastre para AMD Bulldozer en entornos de servidores
Noticias
wolfbcn 0 2,375 Último mensaje 23 Noviembre 2011, 23:52 pm
por wolfbcn
Instalar distintos entornos de escritorio.
GNU/Linux
The_Mushrr00m 5 3,278 Último mensaje 28 Diciembre 2012, 04:44 am
por The_Mushrr00m
[Desarollando]- BrainMind ¿Que tanto sabes?
Juegos y Consolas
Brian1511 9 7,719 Último mensaje 28 Febrero 2015, 18:46 pm
por Brian1511
Entornos para hacking
Hacking
joseluis1235 2 3,749 Último mensaje 17 Enero 2022, 11:32 am
por joseluis1235
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines