في لغة JavaScript، تُستخدم "أنواع البيانات" (Data Types) لتحديد نوع القيمة التي يمكن تخزينها في متغير. فهم أنواع البيانات أمر أساسي لكتابة برامج JavaScript صحيحة وفعّالة.

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

1. الأنواع الأولية (Primitive Data Types):

هذه الأنواع تُمثل قيمًا مُفردة وبسيطة. تشمل:

  • Number (رقم): يُمثل الأعداد، سواء كانت صحيحة أو عشرية. لا يوجد في JavaScript تمييز بين الأعداد الصحيحة والعشرية كما في بعض اللغات الأخرى.

    JavaScript
    let x = 10; // عدد صحيح
    let y = 3.14; // عدد عشري
    let z = 1e6; // مليون (صورة أخرى لكتابة الأعداد)
  • String (نص): يُمثل النصوص، أي سلسلة من الأحرف. يُمكن وضع النصوص بين علامتي اقتباس مفردة (') أو مزدوجة (").

    JavaScript
    let name = 'Ahmed';
    let message = "Hello, world!";
  • Boolean (قيمة منطقية): يُمثل القيم المنطقية: true (صحيح) أو false (خطأ). تُستخدم عادةً في العمليات المنطقية واتخاذ القرارات في البرنامج.

    JavaScript
    let isTrue = true;
    let isFalse = false;
  • Null (فارغ): يُمثل قيمة فارغة أو "لا شيء". يُستخدم للإشارة إلى أن المتغير لا يحتوي على أي قيمة مُحددة.

    JavaScript
    let emptyValue = null;
    
  • Undefined (غير مُعرّف): يُمثل قيمة متغير لم يتم إعطاؤه قيمة بعد. عند تعريف متغير بدون إسناد قيمة له، تكون قيمته undefined بشكل افتراضي.

    JavaScript
    let notDefined; // قيمتها undefined
    
  • Symbol (رمز): نوع بيانات جديد تم إضافته في ES6. يُستخدم لإنشاء مُعرّفات فريدة.

    JavaScript
    let sym = Symbol('mySymbol');
    
  • BigInt (عدد كبير): يُمثل أعدادًا صحيحة أكبر من الحد الذي يُمثله نوع Number. تم إضافته لحل مشكلة التعامل مع الأعداد الكبيرة جدًا.

    JavaScript
    let bigNumber = 1234567890123456789012345n;
    

2. الأنواع المرجعية (Reference Data Types):

هذه الأنواع تُمثل هياكل بيانات أكثر تعقيدًا. تشمل:

  • Object (كائن): يُمثل مجموعة من الخصائص (key-value pairs). يُستخدم لتخزين البيانات بشكل مُهيكل.

    JavaScript
    let person = {
    name: 'Ali',
    age: 30,
    city: 'Riyadh'
    };
  • Array (مصفوفة): يُمثل قائمة مُرتبة من القيم. يُمكن أن تحتوي المصفوفة على أنواع بيانات مُختلفة.

    JavaScript
    let numbers = [1, 2, 3, 4, 5];
    let mixedArray = [1, 'hello', true, null];
  • Function (دالة): تُعتبر الدوال أيضًا نوع بيانات في JavaScript. تُستخدم لتنفيذ مجموعة من الأوامر.

    JavaScript
    function greet(name) {
    console.log('Hello, ' + name + '!');
    }

ملاحظات مهمة:

  • التحقق من نوع البيانات: يُمكن استخدام العامل typeof للتحقق من نوع بيانات متغير.

    JavaScript
    let myVar = 10;
    console.log(typeof myVar); // Output: "number"
  • التحويل بين أنواع البيانات: يُمكن تحويل قيمة من نوع بيانات إلى نوع آخر باستخدام دوال مثل Number(), String(), Boolean().

    JavaScript
    let str = "123";
    let num = Number(str); // تحويل النص إلى رقم
  • ديناميكية أنواع البيانات: JavaScript هي لغة ذات أنواع بيانات ديناميكية، بمعنى أن نوع بيانات المتغير يُمكن أن يتغير أثناء تنفيذ البرنامج.

    JavaScript
    let myVar = 10; // نوعها number
    myVar = "hello"; // الآن نوعها string

فهم أنواع البيانات في JavaScript أمر بالغ الأهمية لكتابة برامج صحيحة وفعّالة. يُساعدك هذا الفهم على تجنب الأخطاء المنطقية والتعامل مع البيانات بشكل صحيح.