1.10
Loops
Examples with a Run button are editable. Underlined terms open a short definition.
Loops
For Loops
for (let rep = 0; rep <= 10; rep++) {
console.log(`Hello World ${rep}`);
}
/* output => Hello World 0
Hello World 1
Hello World 2
...
...
Hello World 10 */
// Looping through Array
const chandraPrakash = [
'ChandraPrakah',
'Darji',
2022 - 2002,
'Student',
['JavaScript', 'Python', 'Html', 'CSS'],
];
const type = [];
for (let index = 0; index < chandraPrakash.length; index++) {
// reading
console.log(chandraPrakash[index]);
// filling the array
type[index] = typeof chandraPrakash[index];
}
// Backword Loop
for (let index = chandraPrakash.length - 1; index >= 0; index--) {
console.log(chandraPrakash[index]);
}
/* output -> ['JavaScript', 'Python', 'Html', 'CSS']
Student
20
Darji
ChandraPrakah */
For of loops
// for of loop [ Looping The ARRAYS ]
const menu = [...restaurant.starterMenu, ...restaurant.mainMenu];
for (const item of menu) console.log(item); // Take items one by one
for (const item of menu.entries()) console.log(item);
/* Output ::: [0, 'Focaccia']
[1, 'Bruschetta']
[2, 'Garlic Bread']
...
*/
for (const [i, el] of menu.entries()) console.log(`${i}: ${el}`);
/* Output ::: 0: Focaccia
1: Bruschetta
2: Garlic Bread
...
*/
console.log(...menu.entries()); // [0, 'Focaccia'] [1, 'Bruschetta'] [2, 'Garlic Bread'] [3, 'Caprese Salad']
// [4, 'Pizza'] [5, 'Pasta']0: 51: "Pasta"length: 2[[Prototype]]: Array(0) [6, 'Risotto']
ForEach loops
In ForEach callback function the the first argument is the element and second on is index of that element, third argument in callBack is arr that is forEach loop is runned.
// '---- 6. forEach Method ( ARRAY )----'
const movements = [200, 450, -400, 3000, -650, -130, 70, 1300];
movements.forEach((movement, transferNo) => {
let type = movement > 0 ? 'Deposited' : 'Withdraw';
console.log(
`You ${type} ${Math.abs(
movement
)}. Your Transaction Number is ${transferNo}`
);
});
/* Output ::: You Deposited 200. Your Transaction Number is 0
You Deposited 450. Your Transaction Number is 1
You Withdraw 400. Your Transaction Number is 2
...
*/
// '---- 7. forEach Method ( MAP ) ----'
const currencies = new Map([
['USD', 'United States dollar'],
['EUR', 'Euro'],
['GBP', 'Pound sterling'],
]);
currencies.forEach((value, key, map) => console.log(`${key}: ${value}`));
/* Output ::: USD: United States dollar
EUR: Euro
GBP: Pound sterling
*/
// '---- 8. forEach Method ( SET ) ----'
const currenciesUnque = new Set(['USD', 'GBP', 'USD', 'EUR', 'EUR']);
currenciesUnque.forEach((value, _, set) => console.log(value));
Nested Loops
for (let i = 0; i < 5; i++) {
console.log(`---------- Exersie Set No ${i} ----------`);
for (let j = 0; j < i; j++) {
console.log(`---- Exersie lift ${j}`);
}
}
While loop
// while loop -> Loop that doesn't require a counter
let rep = 1;
while (rep <= 3) {
console.log(`( ${rep} )is counter`);
rep++;
}
// Loop without Counter -> If we dont know how many time loop will run
let dice = Math.trunc(Math.random() * 6);
while (dice !== 6) {
console.log(dice);
dice = Math.trunc(Math.random() * 7);
if (dice === 6) console.log('Loops is about to end');
}
Loop Control Statments
Continue
// Continue -> When loop gets Continue the current itreation
// is stopped and skipped to next one ...
for (let index = 0; index < chandraPrakash.length; index++) {
if (typeof chandraPrakash[index] !== 'string') continue;
console.log(chandraPrakash[index]);
}
/* Output -> ChandraPrakah
Darji
Student*/
Break
// Break -> When loop gets Break the whole is breaked
// and all itreation will not happen
for (let index = 0; index < chandraPrakash.length; index++) {
if (typeof chandraPrakash[index] === 'number') break;
console.log(chandraPrakash[index]); // no item will print if number is found
}
/* Output -> ChandraPrakah
Darji*/Your last opened chapter is saved in this browser when local storage is available.
Discuss this section
Questions, corrections or a better example? Comments use GitHub Discussions.