- المقدمة
- أولًا: أنواع البيانات الأساسية (Primitive Data Types)
- 1. String (نصوص)
- 2. Number (أرقام)
- 3. Boolean (منطقي)
- 4. Undefined (غير معرف)
- 5. Null (فارغ متعمدًا)
- 6. Symbol (رمز)
- 7. BigInt (أرقام ضخمة)
- ثانيًا: أنواع البيانات المركبة (Non-Primitive / Reference Types)
- 1. Object (كائن)
- 2. Array (مصفوفة)
- 3. Function (دالة)
- ثالثًا: الفرق بين Primitive و Reference Types
- رابعًا: التحديات الشائعة
- خامسًا: أدوات وتقنيات تساعدك
- الخاتمة
المقدمة
في عالم البرمجة، كل شيء بيتعامل مع "بيانات". سواء كنت بتكتب كود بسيط بيحسب مجموع رقمين، أو بتبني تطبيق ويب متكامل – البيانات هي الأساس. عشان كده، فهم أنواع البيانات (Data Types) في JavaScript هو أول خطوة حقيقية لأي مبرمج عاوز يتعلم صح. في المقال ده، هنشرح أنواع البيانات في JavaScript، الفرق بين الأنواع المختلفة، وهنعرض أمثلة حقيقية تساعدك تبدأ تطبق على طول.
أولًا: أنواع البيانات الأساسية (Primitive Data Types)
البيانات الأساسية هي الأنواع البسيطة اللي JavaScript بتتعامل معاها مباشرة، وهي غير قابلة للتغيير (immutable). الأنواع دي عددها 7:
1. String (نصوص)
let name = "Abdo";
let greeting = 'أهلاً بيك!';
2. Number (أرقام)
let age = 23;
let price = 99.99;
3. Boolean (منطقي)
let isAvailable = true;
let isDone = false;
4. Undefined (غير معرف)
let user;
console.log(user); // undefined
5. Null (فارغ متعمدًا)
let product = null;
6. Symbol (رمز)
let id = Symbol("userID");
7. BigInt (أرقام ضخمة)
let bigNumber = 123456789012345678901234567890n;
ثانيًا: أنواع البيانات المركبة (Non-Primitive / Reference Types)
1. Object (كائن)
let user = {
name: "Abdo",
age: 23,
isAdmin: false
};
2. Array (مصفوفة)
let colors = ["أحمر", "أخضر", "أزرق"];
console.log(colors[0]); // أحمر
3. Function (دالة)
function sayHello() {
console.log("أهلاً بيك!");
}
ثالثًا: الفرق بين Primitive و Reference Types
المقارنة | Primitive | Reference |
---|---|---|
التخزين | القيمة نفسها | المرجع (العنوان) |
التعديل | غير قابل للتعديل | قابل للتعديل |
النسخ | يتم نسخ القيمة | يتم نسخ المرجع |
رابعًا: التحديات الشائعة
- الخلط بين null و undefined:
undefined
: يعني المتغير لسه مخدش قيمة.null
: يعني إحنا اديناه قيمة فاضية عن قصد.
- المقارنة بين الأنواع:
==
بيقارن القيمة فقط (وبيعمل تحويل نوع).
===
بيقارن النوع والقيمة (أكثر دقة).
يُفضل دايمًا استخدام0 == false // true 0 === false // false
===
لتجنب لخبطة الأنواع.
خامسًا: أدوات وتقنيات تساعدك
- typeof: لتحديد نوع المتغير.
let x = "Hello"; console.log(typeof x); // string
- Array.isArray(): لمعرفة إذا كان المتغير مصفوفة.
Array.isArray([1, 2, 3]); // true
- Console: استخدم الـ console في المتصفح كتجربة فورية.
الخاتمة
في المقال ده، فهمنا إن أنواع البيانات في JavaScript مش بس أساس للبرمجة، لكنها كمان مفتاح لفهم أعمق للكود اللي بتكتبه.
راجعنا:
- الفرق بين الأنواع الأساسية والمركبة.
- أمثلة عملية على كل نوع.
- نصائح مفيدة وتحديات شائعة.
الخطوة الجاية؟ افتح المتصفح، شغل الـ Console، وابدأ تكتب أنواع بيانات بنفسك. جرب تعمل كائنات، مصفوفات، دوال، وجرّب تقارن بين القيم.
ولو حابب تتعمق أكتر، ممكن تبدأ تتعلم عن:
- Type coercion (تحويل الأنواع تلقائيًا)
- Dynamic typing
- التعامل مع الكائنات بشكل متقدم
قولنا رأيك... كل كلمة منك بتفرق!