المتغيرات وأنواع البيانات في JavaScript

الدرس الثاني: المتغيرات وأنواع البيانات في JavaScript

في هذا الدرس، سنتناول مفهوم المتغيرات في JavaScript، وسنتعرف على كيفية تعريف المتغيرات باستخدام الكلمات المحجوزة مثل var و let و const. كما سنناقش أنواع البيانات المختلفة في JavaScript.


المتغيرات في JavaScript

المتغيرات في JavaScript هي أماكن لتخزين القيم التي قد تتغير أثناء تنفيذ البرنامج. في JavaScript، يمكنك تعريف المتغيرات باستخدام ثلاثة كلمات محجوزة هي:

  • var: هذه الكلمة المحجوزة كانت الطريقة الرئيسية لتعريف المتغيرات في JavaScript قبل إصدار ECMAScript 6 (ES6).
  • let: تم تقديمها في ES6، وهي طريقة أكثر أمانًا لتعريف المتغيرات.
  • const: تم تقديمها أيضًا في ES6، وتُستخدم لتعريف المتغيرات التي لا يمكن تغيير قيمتها بعد التعيين.

1. var:

  • var يمكن استخدامها لتعريف متغير يمكن تغيير قيمته في أي وقت.
  • var لها نطاق (scope) عالمي أو دالّي (function scope)، مما يعني أنها يمكن أن تكون قابلة للوصول داخل الوظيفة فقط إذا كانت مُعرّفة داخلها، أو في جميع أنحاء السكربت إذا كانت مُعرّفة في السياق العالمي.
  • var قد تُسبب بعض المشاكل فيما يتعلق بالتغيير غير المتوقع في القيم بسبب طريقة تخصيص النطاق (scope).

مثال:

var name = "Ali";
name = "Ahmed"; // يمكن تغيير القيمة
console.log(name); // ستطبع "Ahmed"

2. let:

  • let هي طريقة لتعريف متغيرات ضمن نطاق الكود الذي يتم تعريفها فيه (أي النطاق المحلي أو block scope).
  • تُعتبر أفضل من var لأنها تتجنب بعض المشاكل المتعلقة بالنطاق.

مثال:

let age = 25;
age = 30; // يمكن تغيير القيمة
console.log(age); // ستطبع 30

3. const:

  • const يُستخدم لتعريف المتغيرات التي لا يمكن تغيير قيمتها بعد التعيين.
  • لا يمكن إعادة تعيين القيمة التي تم تعيينها بواسطة const بعد ذلك.
  • يجب تهيئة (assign) القيمة عند تعريف المتغير باستخدام const.
  • const لها نفس النطاق (block scope) مثل let.

مثال:

const country = "Jordan";
// country = "Syria"; // ستسبب خطأ لأن القيمة غير قابلة للتغيير
console.log(country); // ستطبع "Jordan"

الفرق بين let و const و var

الخاصيةvarletconst
النطاق (Scope)نطاق دالّي (function scope) أو عالمينطاق محلي (block scope)نطاق محلي (block scope)
إعادة التعيينيمكن إعادة تعيين القيمةيمكن إعادة تعيين القيمةلا يمكن إعادة تعيين القيمة
التعريف المبدئييمكن تعريفه دون تخصيص قيمةيمكن تعريفه بدون تخصيص قيمةيجب تخصيص قيمة عند التعريف
المشاكل المحتملةمشاكل في الوصول إلى المتغيرات بسبب النطاق (Hoisting)أفضل من var لتفادي مشاكل النطاقلا يمكن تعديل القيمة بعد تخصيصها

أنواع البيانات في JavaScript

في JavaScript، هناك مجموعة من أنواع البيانات المختلفة التي يمكن تخزينها في المتغيرات. هذه الأنواع تنقسم إلى نوعين رئيسيين:

  1. الأنواع البدائية (Primitive types):
    • هي أنواع بيانات لا يمكن تغيير قيمتها بعد تعيينها.
    • تشمل: string (نصوص)، number (أرقام)، boolean (منطقية)، undefined (غير معرف)، null (فارغ)، symbol (رموز).
  2. الأنواع الكائنات (Object types):
    • هي أنواع بيانات يمكن أن تحتوي على مجموعة من القيم التي يمكن تغييرها.
    • تشمل: Object (كائنات)، Array (مصفوفات)، Function (دوال).

1. String (نص):

  • يُستخدم لتخزين النصوص (سلسلة من الأحرف).
  • يمكن استخدام علامات اقتباس مفردة ' أو مزدوجة " أو backticks `.

مثال:

let name = "Ali";
let message = 'Hello, World!';
let greeting = `Hello, ${name}!`; // استخدام القوالب النصية (template literals)
console.log(greeting); // ستطبع "Hello, Ali!"

2. Number (رقم):

  • يُستخدم لتخزين الأرقام سواء كانت صحيحة أو عشرية.

مثال:

let age = 25;
let price = 99.99;
console.log(age + price); // ستطبع 124.99

3. Boolean (منطقي):

  • يُستخدم لتخزين قيم منطقية: true أو false.

مثال:

let isStudent = true;
let isEmployed = false;
console.log(isStudent); // ستطبع true

4. Undefined:

  • undefined هي قيمة تمثل المتغيرات التي لم تُعطَ قيمة بعد.

مثال:

let test;
console.log(test); // ستطبع undefined لأن المتغير لم يتم تعيين قيمة له

5. Null:

  • null تمثل قيمة فارغة أو غير موجودة.

مثال:

let person = null;
console.log(person); // ستطبع null

6. Symbol:

  • symbol هو نوع بيانات جديد في ECMAScript 6 (ES6)، يستخدم لإنشاء معرّفات فريدة.

مثال:

let sym = Symbol('description');
console.log(sym); // ستطبع رمز فريد

7. Object:

  • Object يُستخدم لتخزين مجموعات من البيانات التي يمكن أن تتضمن أنواع بيانات مختلفة.
  • يمكن أن يحتوي الكائن على خصائص (properties) وقيمها.

مثال:

let person = {
    name: "Ali",
    age: 30,
    isStudent: true
};
console.log(person.name); // ستطبع "Ali"

الختام

في هذا الدرس، تعلمنا كيفية تعريف المتغيرات باستخدام var و let و const، وتعرفنا على الفروق بينها. كما استعرضنا أنواع البيانات المختلفة في JavaScript، سواء كانت بدائية أو كائنات. في الدروس القادمة، سنغطي العمليات الحسابية والمنطقية في JavaScript وكيفية استخدامها للتفاعل مع البيانات.


اكتشاف المزيد من كود التطور

اشترك للحصول على أحدث التدوينات المرسلة إلى بريدك الإلكتروني.

اترك رد

Scroll to Top