21. > function miFuncion() { return 1 }
> typeof(miFuncion)
function
> var otraFuncion = miFuncion;
> typeof(otraFuncion)
function
22. > function miFuncion() { return 1 }
> typeof(miFuncion)
function
> var otraFuncion = miFuncion;
> typeof(otraFuncion)
function
> typeof(otraFuncion())
number
33. function validadorRango(a, b) {
return function() {
var v = $(this).val();
if (v < a || v > b) {
alert(“Fuera de rango”);
}
}
}
34. function validadorRango(a, b) {
return function() {
var v = $(this).val();
if (v < a || v > b) {
alert(“Fuera de rango”);
}
}
}
¡No se ejecuta inmediatamente!
35. function validadorRango(a, b) {
return function() {
var v = $(this).val();
if (v < a || v > b) {
alert(“Fuera de rango”);
}
}
}
¡No se ejecuta inmediatamente!
¡Pero puede acceder a valores de “afuera”!
65. var phones = []
for (var i in users) {
var user = users[i];
var userPhones = [];
if (user.phones[0]) {
userPhones.push(user.phones[0]);
}
if (user.phones[1]) {
userPhones.push(user.phones[1]);
}
phones.push(userPhones);
}
66. function first(n, array) {
var r = [];
for (var i = 0;
i < Math.min(array.length, n);
i++) {
r.push(array[i]);
}
return r;
}
67. var phones = []
for (var i in users) {
phones.push(
first(2, users.phones)
);
}