البرمجة

المصفوفات في جافاسكربت

المصفوفات في جافاسكربت: مفهومها وأهميتها

تُعتبر المصفوفات (Arrays) من الركائز الأساسية في لغة البرمجة جافاسكربت، وهي أحدى الهياكل البيانية التي تسمح بتخزين مجموعة من البيانات أو القيم داخل متغير واحد. توفر المصفوفات طريقة مرنة وفعالة للتعامل مع بيانات متعددة من نفس النوع، مما يساهم في تسهيل البرمجة وتحسين تنظيم الكود.

تعريف المصفوفات في جافاسكربت

المصفوفة هي عبارة عن هيكل بيانات يمكن أن يحتوي على مجموعة من القيم، سواء كانت هذه القيم من نفس النوع أو أنواع مختلفة. في جافاسكربت، يتم تمثيل المصفوفات باستخدام الكائنات (objects) بحيث يمكن لكل عنصر داخل المصفوفة أن يُعطى قيمة خاصة به، ويمكن الوصول إليها باستخدام فهرس (index) عددي يبدأ من 0.

على سبيل المثال، إذا كنت ترغب في تخزين مجموعة من الأعداد في مصفوفة، يمكنك تعريفها كما يلي:

javascript
let numbers = [1, 2, 3, 4, 5];

في هذا المثال، تم تخزين الأعداد 1، 2، 3، 4، و 5 داخل المصفوفة “numbers”.

إنشاء المصفوفات

تتوفر في جافاسكربت عدة طرق لإنشاء المصفوفات. الطريقة الأكثر شيوعًا هي استخدام القوسين المربعين [] لاحتواء العناصر:

javascript
let fruits = ['apple', 'banana', 'cherry'];

كما يمكن أيضًا إنشاء المصفوفة باستخدام الدالة Array():

javascript
let vegetables = new Array('carrot', 'tomato', 'cucumber');

إذا لم تُحدِّد أي عناصر داخل المصفوفة باستخدام Array()، سيتم إنشاء مصفوفة فارغة:

javascript
let emptyArray = new Array();

الوصول إلى عناصر المصفوفة

تتم عملية الوصول إلى عناصر المصفوفة عبر الفهارس، حيث يبدأ الفهرس من 0. على سبيل المثال:

javascript
let colors = ['red', 'green', 'blue']; console.log(colors[0]); // Output: red console.log(colors[1]); // Output: green console.log(colors[2]); // Output: blue

إذا حاولت الوصول إلى عنصر خارج حدود المصفوفة، مثل:

javascript
console.log(colors[3]); // Output: undefined

فإن النتيجة ستكون undefined لأن المصفوفة تحتوي فقط على ثلاثة عناصر.

إضافة عناصر إلى المصفوفة

يمكنك إضافة عناصر جديدة إلى المصفوفة باستخدام عدة طرق، أبرزها:

استخدام push()

تُستخدم دالة push() لإضافة عنصر في نهاية المصفوفة:

javascript
let numbers = [1, 2, 3]; numbers.push(4); console.log(numbers); // Output: [1, 2, 3, 4]

استخدام unshift()

تُستخدم دالة unshift() لإضافة عنصر في بداية المصفوفة:

javascript
let numbers = [1, 2, 3]; numbers.unshift(0); console.log(numbers); // Output: [0, 1, 2, 3]

حذف عناصر من المصفوفة

يمكنك أيضًا حذف عناصر من المصفوفة باستخدام دوال مدمجة في جافاسكربت.

استخدام pop()

تُستخدم دالة pop() لإزالة العنصر الأخير من المصفوفة:

javascript
let fruits = ['apple', 'banana', 'cherry']; fruits.pop(); console.log(fruits); // Output: ['apple', 'banana']

استخدام shift()

تُستخدم دالة shift() لإزالة العنصر الأول من المصفوفة:

javascript
let fruits = ['apple', 'banana', 'cherry']; fruits.shift(); console.log(fruits); // Output: ['banana', 'cherry']

تغيير عناصر المصفوفة

يمكنك تعديل قيم عناصر المصفوفة مباشرة باستخدام الفهرس. على سبيل المثال:

javascript
let fruits = ['apple', 'banana', 'cherry']; fruits[1] = 'orange'; console.log(fruits); // Output: ['apple', 'orange', 'cherry']

طول المصفوفة

يمكنك معرفة عدد العناصر في المصفوفة باستخدام خاصية length:

javascript
let fruits = ['apple', 'banana', 'cherry']; console.log(fruits.length); // Output: 3

تكرار عناصر المصفوفة

هناك عدة طرق لتكرار العناصر في المصفوفة. من أشهر هذه الطرق هي استخدام حلقة for التقليدية أو استخدام دوال مثل forEach().

استخدام for

javascript
let fruits = ['apple', 'banana', 'cherry']; for (let i = 0; i < fruits.length; i++) { console.log(fruits[i]); }

استخدام forEach()

دالة forEach() تقوم بتكرار جميع العناصر في المصفوفة وتنفيذ دالة معينة لكل عنصر:

javascript
let fruits = ['apple', 'banana', 'cherry']; fruits.forEach(function(item) { console.log(item); });

التصفية والبحث في المصفوفات

تقدم جافاسكربت العديد من الطرق للعمل مع المصفوفات بما في ذلك التصفية (filter) والبحث (find).

استخدام filter()

دالة filter() تُستخدم لإنشاء مصفوفة جديدة تحتوي على العناصر التي تتوافق مع شرط معين:

javascript
let numbers = [1, 2, 3, 4, 5, 6]; let evenNumbers = numbers.filter(function(num) { return num % 2 === 0; }); console.log(evenNumbers); // Output: [2, 4, 6]

استخدام find()

دالة find() تُستخدم للبحث عن أول عنصر في المصفوفة يتوافق مع شرط معين:

javascript
let numbers = [1, 2, 3, 4, 5, 6]; let found = numbers.find(function(num) { return num > 4; }); console.log(found); // Output: 5

دمج المصفوفات

في جافاسكربت، يمكنك دمج مصفوفتين أو أكثر باستخدام دالة concat() أو باستخدام عملية التفكيك (spread operator).

استخدام concat()

javascript
let array1 = [1, 2, 3]; let array2 = [4, 5, 6]; let combined = array1.concat(array2); console.log(combined); // Output: [1, 2, 3, 4, 5, 6]

استخدام spread operator

javascript
let array1 = [1, 2, 3]; let array2 = [4, 5, 6]; let combined = [...array1, ...array2]; console.log(combined); // Output: [1, 2, 3, 4, 5, 6]

التكرار العكسي للمصفوفة

يمكنك استخدام دالة reverse() لعكس ترتيب العناصر في المصفوفة:

javascript
let numbers = [1, 2, 3, 4, 5]; numbers.reverse(); console.log(numbers); // Output: [5, 4, 3, 2, 1]

استخدام المصفوفات متعددة الأبعاد

في جافاسكربت، يمكنك أيضًا إنشاء مصفوفات تحتوي على مصفوفات أخرى (مصفوفات متعددة الأبعاد):

javascript
let matrix = [ [1, 2, 3], [4, 5, 6], [7, 8, 9] ]; console.log(matrix[1][2]); // Output: 6

الخاتمة

تعتبر المصفوفات في جافاسكربت من الأدوات الأساسية التي تُستخدم في العديد من التطبيقات البرمجية. من خلال فهم كيفية إنشاء المصفوفات والتعامل مع عناصرها بطرق مختلفة، يمكنك كتابة أكواد أكثر فعالية وتنظيمًا.