© Khmer Angkor Academy - sophearithput168

Array

សេចក្តីផ្តើម

Array គឺជា object ពិសេសក្នុង JavaScript ដែលប្រើសម្រាប់រក្សាទុកតម្លៃច្រើននៅក្នុងអថេរតែមួយ។ Array អាចមានតម្លៃប្រភេទផ្សេងៗគ្នា។

ហេតុអ្វីត្រូវប្រើ Array?

  • រក្សាទុកទិន្នន័យច្រើនក្នុងអថេរតែមួយ
  • គ្រប់គ្រងទិន្នន័យបានងាយស្រួល
  • មាន methods ច្រើនសម្រាប់ដំណើរការទិន្នន័យ
  • អាចផ្លាស់ប្តូរទំហំបានស្វ័យប្រវត្តិ (dynamic size)

លក្ខណៈពិសេសរបស់ Array

// Array អាចមានប្រភេទផ្សេងៗគ្នា
let លាយ = [1, "សួស្តី", true, {ឈ្មោះ: "សុខ"}, [1, 2]];

// Array មានទំហំដែលអាចផ្លាស់ប្តូរបាន
let អារេ = [1, 2, 3];
អារេ.push(4);  // បន្ថែមធាតុថ្មី
អារេ.length;   // 4

// Array index ចាប់ផ្តើមពី 0
let ផ្លែឈើ = ["ផ្លែប៉ោម", "ចេក", "ក្រូចពោធិ៍សាត់"];
ផ្លែឈើ[0];  // "ផ្លែប៉ោម" (ធាតុទី១)
ផ្លែឈើ[2];  // "ក្រូចពោធិ៍សាត់" (ធាតុទី៣)

បង្កើត Array

វិធីឧទាហរណ៍ការពិពណ៌នា
Array Literal[1, 2, 3]វិធីណែនាំ (ងាយស្រួល និងច្បាស់លាស់)
Array Constructornew Array(1, 2, 3)មិនណែនាំ (អាចមានភាពច្របូកច្របល់)
Empty Array[]Array ទទេ (សម្រាប់បន្ថែមធាតុពេលក្រោយ)
Array.of()Array.of(1, 2, 3)បង្កើត Array ពីធាតុដែលបានផ្តល់
Array.from()Array.from("abc")បង្កើត Array ពី iterable object

ឧទាហរណ៍ការប្រើប្រាស់

// បញ្ជីឈ្មោះសិស្ស
let សិស្ស = ["សោភា", "ដារ៉ា", "ស្រីពៅ", "រក្សា"];

// បញ្ជីពិន្ទុ
let ពិន្ទុ = [85, 92, 78, 95];

// ព័ត៌មានផលិតផល (ប្រភេទលាយ)
let ផលិតផល = {
  ឈ្មោះ: "កុំព្យូទ័រយួរដៃ",
  តម្លៃ: [500, 600, 700],
  មាន: true,
  ស្លាក: ["អេឡិចត្រូនិច", "កុំព្យូទ័រ"]
};

// Array 2D (ម៉ាទ្រីស)
let ម៉ាទ្រីស = [
  [1, 2, 3],
  [4, 5, 6],
  [7, 8, 9]
];

Array Properties & Access

let fruits = ["Apple", "Banana", "Orange"];
fruits.length;  // 3
fruits[0];      // "Apple"
fruits[1];      // "Banana"

Array index ចាប់ផ្តើមពី 0


Array Methods - Add/Remove

let arr = [1, 2, 3];
arr.push(4);      // Add to end: [1, 2, 3, 4]
arr.pop();        // Remove from end: [1, 2, 3]
arr.unshift(0);   // Add to start: [0, 1, 2, 3]
arr.shift();      // Remove from start: [1, 2, 3]

Methods សម្រាប់បន្ថែម និងដកធាតុ


Array Methods - Transform

let arr = [1, 2, 3];
arr.map(x => x * 2);      // [2, 4, 6]
arr.filter(x => x > 1);   // [2, 3]
arr.reduce((a, b) => a + b);  // 6
arr.forEach(x => console.log(x));

Methods សម្រាប់ប្រែក្លាយ Array


Array Methods - Search

let arr = [1, 2, 3, 2];
arr.indexOf(2);       // 1
arr.lastIndexOf(2);   // 3
arr.includes(2);      // true
arr.find(x => x > 1); // 2
arr.findIndex(x => x > 1);  // 1

Methods សម្រាប់ស្វែងរក


Array Methods - Sort & Reverse

let arr = [3, 1, 2];
arr.sort();       // [1, 2, 3]
arr.reverse();    // [3, 2, 1]
arr.sort((a, b) => b - a);  // Sort descending

Methods សម្រាប់តម្រៀប


Array Methods - Join & Slice

let arr = ["a", "b", "c"];
arr.join("-");         // "a-b-c"
arr.slice(0, 2);       // ["a", "b"]
arr.concat([1, 2]);    // ["a", "b", "c", 1, 2]
arr.toString();        // "a,b,c"

Methods សម្រាប់បន្សាំ និងកាត់


Best Practices

  • ប្រើ array literal [] ជំនួស new Array()
  • ប្រើ map, filter, reduce ជំនួស loops
  • ពិនិត្យ length មុនពេល access index
  • ប្រើ spread operator [...arr] សម្រាប់ copy

Interactive Examples

  • Array Manager
  • Array Push/Pop Demo
  • Array Map Demo
  • Array Filter Demo
  • Array Sort Demo
  • Array Join Demo

សង្ខេប

  • Array រក្សាទុកតម្លៃច្រើននៅក្នុងអថេរតែមួយ
  • Index ចាប់ផ្តើមពី 0
  • Add/Remove: push, pop, unshift, shift
  • Transform: map, filter, reduce, forEach
  • Search: indexOf, includes, find
  • Sort: sort, reverse