Explicación básica de los bucles en Javascript con ejemplos
// formas de hacer bucles en javascript
let arr = [1,2,3,4,5];
// foreach ES6
// se puede pasar el this usando la sintaxis antigua
arr.forEach((current, index, array) => {
console.log(current);
});
// for-in
// usado principalmente para iterar sobre las propiedades de un objeto
var obj = {a: 1, b: 2, c: 3};
for (var prop in obj) {
console.log(`obj.${prop} = ${obj[prop]}`);
};
// for-of
// crea un bucle sobre cualquier tipo de iterable. Array, string, set, map, etc.
let iterable = [10, 20, 30];
for (let value of iterable) {
value += 1;
console.log(value);
}
// Los generadores también son útiles como iteradores
// Implementación de un generador para filtrar objetos de un arreglo
let arr = ['Ana', 'Jose', 'Pedro', 'Camila', 'Antonio'];
function* filter(test, iterable) {
for (var item of iterable) {
if (test(item)) {
yield item;
}
}
}
function lessThanThreeWords(string) {
return string.length <= 3;
}
for (let item of filter(lessThanThreeWords, arr)) {
console.log(item);
}