Conceptos Flashcards

1
Q

¿Qué son las funciones closure?
Escribir ejemplo.

A

Son funciones que retornan otras funciones, las cuales pueden acceder al contexto de su función padre *y obtener información de ahí porque el entorno léxico del contexto del padre no se destruye, ya que la función hija la necesita. * (revisar significado de entorno léxico)

var contenedor = function ( ) {
  let caja = [ ];
	
  return function(item) {
      caja.push(item);
      return caja;
  };
};
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

¿Cuáles son las dos condiciones para tener una función closure?

A

Que la función retorne otra función y que la función hija requiera una variable de su padre.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

¿Cómo funcionan los ‘closures’ en JavaScript? ¿Cuándo se utilizan?

A

El closure es una variable declarada localmente y que está relacionada con una función que sigue en memoria cuando la función ha regresado (UniPython)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

¿A qué se refiere this?

A
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

¿Qué hace el método bind y qué parámetros recibe?

A

El método bind es un método de función que sirve para vincular la función dándole el contexto donde se encuentra la variable que necesita (señala a dónde mira el this.
Los parámetros que utiliza son this (siempre en primer lugar) y después los alrgumentos que nosotros querramos y que la función necesite).

var saludarPersona = saludar.bind(persona, "Holap");
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

¿Cuál es la diferencia entre el método bind y call?

A

Que aplicando el método call no tengo que guardarlo como variable, se ejecuta instantáneamente.

Ej:
~~~
saludar.call(persona);
~~~

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

¿Qué es el entorno léxico?

A

Es un OBJETO que tienen los contextos de ejecución donde se almacenan los nombres de las variables que existen dentro de una función y los valores actuales que tienen.
Clave (key) son las variables
Valor (value) son los valores actuales que tienen las variables.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

¿Qué es el hoisting?

A
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

¿Qué pasa cuando se ejecuta uan función en javascript?

en cuanto a contexto y a entorno léxico

A

Se crea un nuevo contexto de ejecución con un nuevo entorno léxico

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

¿Qué es una variable global?

A

Una variable que está definida en el contexto global y se puede usar en cualquier parte del programa. Se puede modificar en cualquier parte del programa.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

¿Qué son las variables locales?

A

Variables que sólo pueden ser utilizadas dentro de su ámbito en el que fueron declaradas.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

¿Cuál variable tiene mayor prioridad?

A

La variable declarada en un contexto local sobre una que fue declarada en un contexto global.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

¿Qué valor retorna por defecto una función?

A

Undefined

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

¿En qué orden se resuelven las asignaciones en Javascript?

A

Primero se resuelve lo que está a la derecha del símbolo de asignación (=) antes de ser asignado a la variable que está a la izquierda (es decir de derecha a izquierda resuelve JS)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

¿Cuál es la diferencia entre while y do while?

A

En el do while se va a ejecutar al menos una vez la sentencia ya que la condición de while viene hasta después.

do {
console.log(x);
\++;
} while (x<10);

```
while ( x < 10) {
console.log(x);
x++;
}
~~~

How well did you know this?
1
Not at all
2
3
4
5
Perfectly