Wayground logo

Free Printable Worksheets

Font size

S
M
L
XL
Worksheets

Funciones - JS

Total questions: 10

Worksheet time: 2mins

Name
Class
Date
1.

¿Cuál es la principal diferencia en cómo trata JavaScript el "hoisting" entre una declaración de función (function miFunc( ){...}) y una expresión de función asignada a var (var miFunc = function( ){...})?

a)

Ambas se elevan (hoisting) completamente, incluyendo la asignación.

b)

Ninguna se eleva.

c)

La declaración se eleva completamente (se puede llamar antes), mientras que en la expresión `var` solo se eleva la declaración de la variable (`var miFunc;`) inicializada como `undefined`.

d)

La expresión se eleva completamente, pero la declaración no.

2.

En el contexto de funciones, ¿qué son los "argumentos"?

a)

Las variables listadas dentro de los paréntesis en la definición de la función.

b)

Los valores reales que se pasan a la función cuando esta es llamada.

c)

Las variables declaradas dentro del cuerpo de la función.

d)

El valor que devuelve la función usando la palabra clave `return`.

3.

Si una función en JavaScript no incluye una declaración return explícita, ¿qué valor devuelve por defecto?

a)

null

b)

0

c)

undefined

d)

Un string vacío

4.

¿Cuál de las siguientes sintaxis representa correctamente una función flecha que toma dos parámetros (a, b) y devuelve su suma?

a)

const sumar = (a, b) => { a + b };

b)

const sumar = function(a, b) => a + b;

c)

const sumar = (a, b) => a + b;

d)

const sumar = => a + b;

5.

¿Cuál es el ámbito (scope) de una variable declarada con let o const dentro de un bloque if?

a)

Ámbito de Bloque (accesible solo dentro de las llaves `{ }` del `if`).

b)

No tiene ámbito, es un error declararlas ahí.

c)

Ámbito de Función (accesible solo dentro de la función que contiene el `if`).

d)

Ámbito Global (accesible desde cualquier parte del script).

6.

console.log(miVar);

var miVar = 10;

¿Qué se imprime en consola?

a)

undefined

b)

null

c)

10

d)

ReferenceError

7.

¿Qué permite hacer el "hoisting" con las declaraciones de función (function miFuncion( ) { ... })?

a)

Permite llamarlas únicamente después de su definición en el código.

b)

Permite llamarlas antes de su definición en el código.

c)

Evita que se puedan llamar dentro de otras funciones.

d)

Hace que devuelvan `undefined` si se llaman antes de definirlas.

8.

¿Qué resultado se obtiene al intentar ejecutar el siguiente código?

miExpresion();

const miExpresion = function( ) {

console.log("¡Hola desde expresión!");

};

a)

Se imprime "¡Hola desde expresión!".

b)

Se imprime `undefined`.

c)

No pasa nada, el código se ignora.

d)

Se produce un `TypeError: miExpresion is not a function` (si fuera `var`) o un `ReferenceError` (con `const`/`let`).

9.

¿Para qué se utilizan los parámetros por defecto en una función?

a)

Para obligar al usuario a pasar siempre un valor para ese parámetro.

b)

Para asignar un valor a un parámetro si no se proporciona ningún argumento para él al llamar a la función.

c)

Para definir el tipo de dato que debe tener el argumento.

d)

Para que la función devuelva ese valor por defecto si no hay `return`.

10.

Una variable declarada fuera de cualquier función tiene...

a)

Ámbito de Bloque.

b)

Ámbito Global.

c)

Ámbito Local o de Función.

d)

No tiene ámbito definido.