أنواع البيانات
رأيت المتغيّر كصندوق باسم. السؤال التالي: أيّ نوع من القيم يجلس داخله؟ هذه الأنواع هي أنواع البيانات. نرسم خريطة المبتدئ ثم نسأل JavaScript بـ typeof عن التسمية.
ما أنواع البيانات وكيف تفحصها؟
نوع البيانات هو جنس القيمة التي يحملها الاسم — نص، رقم، صح/خطأ، «لا قيمة بعد»، وغيرها. في هذه الدورة تبدأ بـ string و number و boolean و undefined و null. الكائنات والمصفوفات تظهر بإيجاز؛ التفاصيل لاحقًا. للفحص اكتب typeof قبل القيمة (أو اسم المتغيّر). الجواب سلسلة قصيرة مثل "string" أو "number".
خريطة الأنواع للمبتدئ
📊 أجناس القيم التي تلتقيها أولًا
| الجنس | مثال | عادةً typeof |
ملاحظة للمبتدئ |
|---|---|---|---|
| نص (string) | "Hello" |
"string" |
نص بين علامتي اقتباس |
| رقم | 42 أو 3.5 |
"number" |
الصحيح والعشري نوع واحد هنا |
| Boolean | true / false |
"boolean" |
تشغيل/إيقاف؛ للشروط لاحقًا |
| Undefined | اسم بلا قيمة بعد | "undefined" |
أُعلن ولم يُسنَد إليه |
| Null | null |
"object" (غريب) |
فراغ مقصود؛ تسمية typeof مربكة — احفظ الـ quirk |
| كائن / مصفوفة (معاينة) | { } / [1, 2] |
"object" |
مجموعة قيم؛ التفاصيل لاحقًا |
قيم نصية
النص بين اقتباس. typeof يعيد "string".
let label = "JavaScript";
console.log(label);
console.log(typeof label);
قيم عددية
الصحيح والعشري للمبتدئ نوع واحد: number. لا حاجة لنوع «صحيح» منفصل هنا.
let score = 42;
console.log(score);
console.log(typeof score);
قيم boolean
true و false نوع مستقل — مفيد لاحقًا للشروط. كلمات مفتاحية وليست النص "true".
let ready = true;
console.log(ready);
console.log(typeof ready);
undefined — بلا قيمة بعد
إن أعلنت بـ let دون إسناد، القيمة undefined وtypeof يعيد "undefined".
let pending;
console.log(pending);
console.log(typeof pending);
null — فراغ مقصود
null يعني «فارغ عمدًا». حقيقة غريبة: typeof null هو "object" — quirk قديم. اعتبر null فراغًا واحفظ التسمية حتى لا تربكك.
let empty = null;
console.log(empty);
console.log(typeof empty);
افحص عدة قيم في سكربت واحد
اطبع القيمة ونتيجة typeof. لاحظ أن "10" نص بينما 10 رقم.
console.log(typeof "10");
console.log(typeof 10);
console.log(typeof false);
console.log(typeof undefined);
console.log(typeof null);
اعرض تسمية النوع على الصفحة
احفظ قيمة، اقرأ typeof، وضع التسمية في الصفحة بـ textContent.
<!DOCTYPE html>
<html>
<head>
<title>Data Types — typeof on page</title>
</head>
<body>
<p id="out">…</p>
<script>
let sample = "W3Learn";
let kind = typeof sample;
document.getElementById("out").textContent = "Type: " + kind;
</script>
</body>
</html>
الفقرة تعرض Type: string لأن sample نص. غيّر sample إلى رقم أو true وحدّث الصفحة لترى التسمية تتغيّر.
جرّب بنفسك
- أنشئ
letباسم مدينة بين اقتباس؛ اطبع القيمة وtypeof. - أسند رقمًا بلا اقتباس؛ توقّع
"number". - أسند
trueأوfalse؛ أكّد أن النوع"boolean". - اكتب
let x;بلا إسناد؛ اطبعtypeof x. - أسند
null؛ لاحظ quirk"object". - في مثال HTML غيّر
sampleفقط وحدّث الصفحة.
أخطاء شائعة
- كتابة
let n = "42";وتوقّع حسابًا رقميًا — الاقتباس يجعلها نصًا - الذعر من
typeof null === "object"— quirk وليست درس كائنات بعد - معاملة كلمتي
stringأوnumberكأسماء متغيّرات يجب إعلانها - نسيان
typeofعندما تتشابه القيم في وحدة التحكم وتختلف في السلوك - الغوص في المصفوفات/الكائنات قبل دروسها — هذه الخريطة تكفي الآن
خلاصة
- نوع البيانات = جنس القيمة داخل المتغيّر
- خريطة المبتدئ: string و number و boolean و undefined و null (ومعاينة قصيرة للكائن/المصفوفة)
typeofيعيد تسمية النوع كسلسلةtypeof nullهو"object"— احفظ الـ quirk- التالي: الأرقام — تفاصيل أعمق مع القيم العددية
🧠 اختبر معرفتك
اختبر معرفتك
تحدى نفسك مع هذا الاختبار التفاعلي واكتشف مدى فهمك للموضوع
📝 التعليمات
- اقرأ كل سؤال بعناية
- اختر أفضل إجابة لكل سؤال
- يمكنك إعادة الاختبار عدة مرات كما تريد
- سيتم عرض تقدمك في الأعلى