Optimización mediante funciones integradas en JavaScript
Supongamos que un programador verifica si
en un array existe el número 3:
javascriptlet arr = [1, 2, 3, 4, 5, 6, 7, 8, 9];
let exists = false;
for (let elem of arr) {
if (elem === 3) {
exists = true;
break;
}
}
console.log(exists);
Afirmo que hay algo incorrecto con este código.
¿Qué pasa, si salimos del ciclo
después de encontrar el número 3? El asunto es
que las funciones integradas en JavaScript siempre
funcionan más rápido que un código personalizado
análogo.
En nuestro caso, existe la función includes,
que resuelve la tarea planteada, - y se debe
utilizar precisamente esta función:
javascriptlet arr = [1, 2, 3, 4, 5, 6, 7, 8, 9];
console.log(arr.includes(3));
Moraleja: antes de resolver una tarea, asegúrese si existe o no una función integrada de JavaScript para su solución.
El siguiente código verifica si una cadena
comienza con 'http'.
Realice la optimización:
javascriptlet str = '';
if (str[0] + str[1] + str[2] + str[3] === 'http') {
console.log('+++');
} else {
console.log('---');
}
El siguiente código llena un array con un valor determinado. Realice la optimización:
javascriptlet arr = fillArr('x', 5);
console.log(arr);
function fillArr(val, amount) {
let arr = [];
for (let i = 1; i <= amount; i++) {
arr.push(val);
}
return arr;
}