المتغيرات وأنواع البيانات — JavaScript الأساسيات
المتغيرات وأنواع البيانات
المتغيرات هي صناديق لتخزين البيانات في الذاكرة.
طرق تعريف المتغيرات
1. let (الطريقة الحديثة)
let age = 25; // يمكن تغيير قيمته
age = 26; // ✅ مسموح
let age = 30; // ❌ خطأ - لا يمكن إعادة التعريف2. const (الثوابت)
const PI = 3.14159; // قيمة ثابتة
PI = 3.14; // ❌ خطأ - لا يمكن التغيير
const user = { name: "أحمد" };
user.name = "محمد"; // ✅ مسموح - تغيير المحتوى
user = {}; // ❌ خطأ - لا يمكن تغيير المرجع3. var (الطريقة القديمة)
var x = 10; // تجنب استخدامها
var x = 20; // ⚠️ مسموح لكن خطيرأنواع البيانات الأساسية
1. الأرقام (Number)
let integer = 42; // عدد صحيح
let decimal = 3.14; // عدد عشري
let negative = -100; // سالب
let scientific = 2.5e6; // 2.5 × 10⁶ = 2,500,000
let infinity = Infinity; // اللانهاية
let notNumber = NaN; // ليس رقم
// العمليات
console.log(10 + 5); // 15 - جمع
console.log(10 - 5); // 5 - طرح
console.log(10 * 5); // 50 - ضرب
console.log(10 / 5); // 2 - قسمة
console.log(10 % 3); // 1 - باقي القسمة
console.log(10 ** 2); // 100 - الأس2. النصوص (String)
let name = "سارة";
let single = 'مرحباً';
let double = "أهلاً";
let backtick = `مرحباً يا ${name}`; // Template Literal
// خصائص النص
let text = "JavaScript";
console.log(text.length); // 10
console.log(text[0]); // J
console.log(text.toUpperCase()); // JAVASCRIPT
console.log(text.toLowerCase()); // javascript
console.log(text.includes("Script")); // true
console.log(text.slice(0, 4)); // Java
console.log(text.split("")); // ["J","a","v","a","S","c","r","i","p","t"]3. القيم المنطقية (Boolean)
let isActive = true;
let isDeleted = false;
// القيم التي تعتبر false:
// false, 0, "", null, undefined, NaN
// كل شيء آخر يعتبر true4. القيم الفارغة
let nothing = null; // فارغ عمداً
let notDefined; // undefined - لم يُعرَّف
console.log(notDefined); // undefined5. الرموز (Symbol) - ES6
const id = Symbol("id");
const id2 = Symbol("id");
console.log(id === id2); // false - كل symbol فريدفحص نوع البيانات
console.log(typeof 42); // "number"
console.log(typeof "مرحباً"); // "string"
console.log(typeof true); // "boolean"
console.log(typeof undefined); // "undefined"
console.log(typeof null); // "object" (خطأ تاريخي!)
console.log(typeof {}); // "object"
console.log(typeof []); // "object"
console.log(typeof function(){}); // "function"تحويل الأنواع
// إلى String
String(123); // "123"
(123).toString(); // "123"
123 + ""; // "123"
// إلى Number
Number("123"); // 123
parseInt("123"); // 123
parseFloat("3.14"); // 3.14
+"123"; // 123
// إلى Boolean
Boolean(1); // true
Boolean(0); // false
!!1; // true// تجربة المتغيرات
let name = "أحمد";
const age = 25;
console.log(`الاسم: ${name}`);
console.log(`العمر: ${age}`);
// تجربة أنواع البيانات
let number = 42;
let text = "مرحباً";
let isStudent = true;
console.log(typeof number); // number
console.log(typeof text); // string
console.log(typeof isStudent); // booleanاختبر فهمك