Iterative or Loop Statements

Iteration (Looping)

Iteration (Looping) គឺជាការបន្តអនុវត្តកូដម្តងហើយម្តងទៀតលើទិន្នន័យដូចជា arrays, objects, strings ឬ collections ផ្សេងៗ។ វាជាចំណូលដ៏សំខាន់ក្នុង JavaScript ដើម្បីធ្វើការប្រើប្រាស់ទិន្នន័យដដែលៗដោយស្វ័យប្រវត្តិ។

វាមានដូចជា៖ [for, while, do...while], [forEach(), map(), filter(), reduce()],[for...in, for...of]


While Statement
ជា 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

វាស្រដៀងទៅនឹង while...loop ដែរ ក៏ប៉ុន្តែជា post-loop ដែលមានន័យថាវាធ្វើការ excecute code មុន ហើយពិនិត្យលក្ខខ័ណ្ឌជាក្រោយ​ មានន័យថា statements ត្រូវបាន execute យ៉ាងហោចណាស់ក៏បានម្តងដែរ។
syntax:
do{
statements;
} while(expression);

ឧទាហរណ៍

let i = 0;
do {
  console.log(i); // Will log 0, 1, 2, 3, 4
  i++;
} while (i < 5);



For Statement
ដូចទៅនឹង​ while ដែរ តែខុសត្រង់ថាវា សំរួលដល់ការបង្កើត initialization, condition, increment statement។
Syntax:
for(initialization,condition,increment_statement){
statements;
}

ឧទាហរណ៍

  for (let i = 0; i < 5; i++) {
  console.log(i); // Will log 0, 1, 2, 3, 4
}
  

for...in
for...in loop in JavaScript is used for iterating over the enumerable properties of an object.
ដើម្បីរាប់លេខរៀង (enumerate) លក្ខណៈសម្បត្តិ (properties) នៃវត្ថុ (object) នៅក្នុង JavaScript។ វាត្រូវបានប្រើជាពិសេសនៅពេលអ្នកចង់ចូលប្រើរាល់លក្ខណៈសម្បត្តិនៃវត្ថុមួយ។
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'
}
  

for...of
for...of It is used for iterating over iterable objects such as arrays, strings, maps, sets, and more
ត្រូវបានប្រើជាមួយ iterable objects ដូចជា Array, Map, Set, និង String។
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 ថ្មី


មេរៀនដែលទាក់ទង

Post a Comment

0 Comments