Iteration (Looping)
Iteration (Looping) គឺជាការបន្តអនុវត្តកូដម្តងហើយម្តងទៀតលើទិន្នន័យដូចជា arrays, objects, strings ឬ collections ផ្សេងៗ។ វាជាចំណូលដ៏សំខាន់ក្នុង JavaScript ដើម្បីធ្វើការប្រើប្រាស់ទិន្នន័យដដែលៗដោយស្វ័យប្រវត្តិ។
វាមានដូចជា៖ [for, while, do...while], [forEach(), map(), filter(), reduce()],[for...in, for...of]
- ជា pre-test loop ដែលមានន័យថា វាធ្វើការត្រួតពិនិត្យលើលក្ខខ័ណ្ឌមុននឹង execute code (ប្រតិបត្តិcode). វាធ្វើការ execute statements ម្តងហើយម្តងទៀត កាលណា expression មានតំលៃ true.
syntax: while(expression){ statements; }ឧទាហរណ៍
let i = 0; while (i < 5) { console.log(i); // Will log 0, 1, 2, 3, 4 i++; } - Do While Statement
syntax:
do{
statements;
} while(expression);
ឧទាហរណ៍
let i = 0;
do {
console.log(i); // Will log 0, 1, 2, 3, 4
i++;
} while (i < 5);
Syntax:
for(initialization,condition,increment_statement){
statements;
}
ឧទាហរណ៍
for (let i = 0; i < 5; i++) {
console.log(i); // Will log 0, 1, 2, 3, 4
}
Syntax:
for (let key in object) {
// code to be executed
}
ឧទាហរណ៍
const person = { name: "Alice", age: 25 };
for (let key in person) {
console.log(key); // Will log 'name' and 'age'
}
Syntax:
for (let element of iterable) {
// code to be executed
}
ឧទាហរណ៍
let arr = [10, 20, 30, 40];
for (let value of arr) {
console.log(value); // Will log 10, 20, 30, 40
}
| Loop | ប្រើលើ Object | ប្រើលើ Array | Iterate លើ |
|---|---|---|---|
| for...in | (ល្អ) | (កុំប្រើ) | Keys (index) |
| for...of | (មិនដំណើរការ) | (ល្អ) | Values |
Write a function findAllIdx(arr, value) that returns an array of the indices of the elements whose value is equal to value.
findAllIdx([1,0,1,0,0,1], 0) // [1,3,4]
findAllIdx([1,1], 0) // []
function findAllIdx(arr, value) {
let newArr = []
for (const key in arr) {
if(arr[key] === value){
newArr.push(Number(key))
}
}
return newArr
}
console.log(findAllIdx([1,0,1,0,0,1], 0))
forEach() និង map()
forEach()
ប្រើសម្រាប់ iteration ទៅលើ array ដោយគ្មាន return។ វាធ្វើអោយមុខងារ (callback function) ត្រូវបានអនុវត្តលើ element នីមួយៗ។
const fruits = ["apple", "banana", "mango"];
fruits.forEach((fruit, index) => {
console.log(`🥭 ផ្លែទី ${index + 1}: ${fruit}`);
});
map()
ប្រើសម្រាប់ iteration ហើយបង្កើត ឬ return array ថ្មី ដោយប្តូរតម្លៃនៃ element នីមួយៗ។
const prices = [5, 10, 15]; const discountedPrices = prices.map(price => price * 0.9); // 10% discount console.log(discountedPrices); // លទ្ធផល៖ [4.5, 9, 13.5]
| លក្ខណៈ | forEach() | map() |
|---|---|---|
| ប្រើសម្រាប់ | Iteration (looping) | បង្កើត array ថ្មី |
| Return value | undefined | Array ថ្មី |
| Mutation (កែប្រែ) | មិនបង្កើត array ថ្មី | បង្កើត array ថ្មី |
| ប្រើនៅពេល | ចង់ execute កូដលើ element | ចង់ return តម្លៃថ្មី |
តើគួរប្រើ forEach() ឬ map()?
ប្រើ forEach() → ប្រសិនបើអ្នកចង់ ប្រតិបត្តិលើ element (effects, console.log, API calls)
ប្រើ map() → ប្រសិនបើអ្នកចង់ បម្លែង array (transform data) និង return array ថ្មី
មេរៀនដែលទាក់ទង
0 Comments