اÙÙÙÙ Ø© ÙÙ Ø¬Ø§ÙØ§ Ø³ÙØ±Ø¨Øª دائ٠ا تÙÙÙ Ù Ù ÙÙØ¹ ٠عÙÙ . عÙ٠سبÙ٠اÙÙ Ø«Ø§Ù ÙØµ أ٠رÙÙ .
ØªÙØ¬Ø¯ 8 Ø£ÙÙØ§Ø¹ Ø¨ÙØ§Ùات Ø£Ø³Ø§Ø³ÙØ© ÙÙ Ø¬Ø§ÙØ§ Ø³ÙØ±Ùبت . ÙÙØ§ سÙÙ ÙØºØ·ÙÙ٠بشÙ٠عا٠ÙÙ٠اÙÙØµÙ٠اÙÙØ§Ø¯Ù Ø© Ø³ÙØªÙÙ٠ع٠ÙÙ ÙÙØ¹ Ø¨Ø§ÙØªÙصÙÙ.
ÙØ³ØªØ·Ùع Ø£Ù ÙØ¶Ø¹ Ø£Ù ÙÙØ¹ ÙÙ Ù ØªØºÙØ± . عÙ٠سبÙ٠اÙ٠ثا٠اÙÙ ØªØºÙØ± ÙØ¯ ÙÙÙÙ ÙÙ ÙØØ¸Ø© ٠ا ÙØµ Ø«Ù ÙØªÙ تخزÙ٠رÙÙ ÙÙÙ:
// ÙØ§ ÙÙØ¬Ø¯ خطأ
let message = "hello";
message = 123456;
ÙØºØ§Øª Ø§ÙØ¨Ø±Ù جة Ø§ÙØªÙ ØªØ³Ù Ø Ø¨Ø°ÙÙ Ù Ø«Ù Ø¬Ø§ÙØ§ Ø³ÙØ±Ùبت ÙØ·Ù٠عÙÙÙØ§ âdynamically typedâ ÙØ¹Ù٠أÙÙ ÙÙØ¬Ø¯ Ø£ÙÙØ§Ø¹ Ø¨ÙØ§Ùات Ù ØØ¯Ø¯Ø© ÙÙ٠اÙÙ ØªØºÙØ±Ø§Øª ØºÙØ± Ù ÙÙØ¯Ø© بÙÙ .
Ø§ÙØ±ÙÙ
let n = 123;
n = 12.345;
اÙÙÙØ¹ رÙÙ ÙÙ Ø«Ù Ø§ÙØ£Ø±ÙØ§Ù Ø§ÙØµØÙØØ© ÙØ§ÙØ¹Ø´Ø±ÙØ©.
ØªÙØ¬Ø¯ عÙ
ÙÙØ§Øª ÙØ«Ùرة تتÙ
عÙÙ Ø§ÙØ£Ø±ÙاÙ
Ù
Ø«Ù Ø§ÙØ¶Ø±Ø¨ *ÙØ§ÙÙØ³Ù
Ø© / ÙØ§ÙØ¥Ø¶Ø§ÙØ© + Ù Ø§ÙØ·Ø±Ø -ÙÙÙØ°Ø§.
Ø¨Ø¬Ø§ÙØ¨ Ø§ÙØ£Ø±ÙاÙ
Ø§ÙØ·Ø¨ÙØ¹ÙØ© ÙÙØ§Ù Ù
ا ÙØ³Ù
Ù âÙÙÙ
رÙÙ
ÙØ© Ø®Ø§ØµØ©â Ø§ÙØªÙ Ø£ÙØ¶Ø§Ù ØªÙØ¶Ù
ÙÙØ°Ø§ اÙÙÙØ¹ Ù
Ù Ø§ÙØ¨ÙØ§ÙØ§Øª: InfinityÙ -Infinity Ù NaN.
-
InfinityØªÙ Ø«Ù Ø§ÙØªØ¹Ø¨Ùر Ø§ÙØ±ÙØ§Ø¶Ù Ù Ø§ÙØ§ÙÙØ§ÙØ© â. ÙÙÙ ÙÙÙ Ø© خاصة Ø£ÙØ¨Ø± ٠٠أ٠رÙÙ .ÙØ³ØªØ·Ùع Ø£Ù ÙØØµÙ Ø¹ÙÙÙØ§ ÙØªÙجة اÙÙØ³Ù Ø© عÙÙ ØµÙØ±:
alert( 1 / 0 ); // Ù Ø§ÙØ§ ÙÙØ§ÙØ©Ø£Ù ÙØªÙ Ø§ÙØ±Ø¬Ùع Ø¥ÙÙÙØ§ ٠باشرة:
alert( Infinity ); // Ù Ø§ÙØ§ÙÙØ§ÙØ© -
NaNتعبر ع٠خطأ ØØ³Ø§Ø¨Ù. ÙØªÙجة ع٠ÙÙØ© ØØ³Ø§Ø¨ÙØ© خاطئة Ø£Ù ØºÙØ± ٠عرÙÙØ© عÙ٠سبÙ٠اÙ٠ثاÙ:alert( "not a number" / 2 ); // NaN Ù Ø«Ù ÙØ°Ù اÙÙØ³Ù Ø© خاطئةNaNÙØ²Ø¬Ø©. أ٠ع٠ÙÙØ© تت٠عÙÙNaNترجعNaN:alert( "not a number" / 2 + 5 ); // NaNÙØ°Ù٠إذا ÙØ¬Ø¯Øª
NaNÙÙ Ø£Ù Ù ÙØ§Ù ÙÙ ØªØ¹Ø¨ÙØ± ØØ³Ø§Ø¨Ù ØªÙØªØ´Ø± Ù٠اÙÙØªÙجة بأÙÙ ÙÙØ§.
اÙÙÙØ§Ù Ø¨Ø§ÙØ±ÙØ§Ø¶ÙØ§Øª âØ£Ù Ùâ ÙÙ Ø¬Ø§ÙØ§ Ø³ÙØ±Ø¨Øª. ÙØ³ØªØ·Ùع اÙÙÙØ§Ù بأ٠شئ: اÙÙØ³Ù Ø© عÙÙ ØµÙØ± Ù Ù Ø¹Ø§Ù ÙØ© اÙÙØµÙص Ø§ÙØºÙر Ø§ÙØ±ÙÙ ÙØ© عÙ٠أÙÙØ§ Ø£Ø±ÙØ§Ù Ù Ø¥ÙØ®.
اÙÙÙØ¯ ÙÙ ÙØªÙÙ٠بخطأ ÙØ§ØªÙ (âÙ
ÙØªâ). ÙÙ Ø£Ø³ÙØ£ Ø§ÙØ£ØÙا٠سÙÙ ÙØØµÙ Ø¹ÙÙ NaN ÙÙØªÙجة.
اÙÙÙÙ Ø§ÙØ¹Ø¯Ø¯ÙØ© Ø§ÙØ®Ø§ØµØ© Ø±Ø³Ù ÙØ§Ù Ù٠تعتبر ٠٠اÙÙÙØ¹ âØ±ÙÙ â . Ø¨Ø§ÙØ·Ø¨Ø¹ ÙÙ ÙÙØ³ Ø£Ø±ÙØ§Ù باÙ٠عÙ٠اÙÙ ÙØ·ÙÙ ÙÙÙÙÙ Ø©.
Ø³ÙØ±Ù اÙÙ Ø²ÙØ¯ Ù Ù Ø§ÙØªØ¹Ø§Ù ٠٠ع Ø§ÙØ£Ø±ÙØ§Ù Ø®ÙØ§Ù ÙØ°Ø§ اÙÙØµÙ Ø§ÙØ£Ø¹Ø¯Ø§Ø¯.
BigInt
ÙÙ Ø¬Ø§ÙØ§ Ø³ÙØ±ÙØ¨ØªØ Ø§ÙÙÙØ¹ ânumberâ ÙØ§ ÙÙ
Ø«Ù Ø§ÙØ£Ø¹Ø¯Ø§Ø¯ Ø§ÙØµØÙØØ© Ø£ÙØ¨Ø± Ù
Ù (253-1) (Ù ÙÙ 9007199254740991)Ø Ø£Ù Ø£ÙÙ Ù
Ù -(-253-1) ÙÙØ£Ø±ÙاÙ
Ø§ÙØ³Ø§Ùبة. Ø¥ÙÙØ§ ÙÙÙØ¯ ÙÙÙØ© ÙØ§ØªØ¬Ø© ع٠تÙ
Ø«ÙÙÙÙ
Ø§ÙØ¯Ø§Ø®ÙÙ.
ÙÙ Ø¹Ø¸Ù Ø§ÙØ£ØºØ±Ø§Ø¶ ÙØ°Ø§ ÙÙÙÙØ ÙÙÙ Ù٠بعض Ø§ÙØ£ØÙØ§Ù ÙØØªØ§Ø¬ ÙØ£Ø±ÙØ§Ù ÙØ¨Ùرة ØÙØ§Ù Ø Ø¹Ù٠سبÙ٠اÙ٠ثاÙ. ÙÙØªØ´ÙÙØ± Ø£Ù Ø§ÙØ·Ùابع Ø§ÙØ²Ù ÙÙØ© Ø§ÙØ¯ÙÙÙØ© ÙÙÙ ÙÙØ±Ù ثاÙÙØ©.
BigInt تÙ
ت Ø¥Ø¶Ø§ÙØ© اÙÙÙØ¹ Ù
Ø¤Ø®Ø±ÙØ§ Ø¥Ù٠اÙÙØºØ© ÙØªÙ
Ø«ÙÙ Ø§ÙØ£Ø¹Ø¯Ø§Ø¯ Ø§ÙØµØÙØØ© ذات Ø§ÙØ·Ù٠اÙÙØ¨Ùر.
ÙÙÙ
Ø© BigInt ØªÙØ´Ø£ Ø¨Ø¥ÙØØ§Ù ØØ±Ù n Ø¥ÙÙ ÙÙØ§ÙØ© Ø§ÙØ±ÙÙ
Ø§ÙØµØÙØ:
// "n" Ù٠اÙÙÙØ§ÙØ© تعÙ٠أÙÙ Ù
Ù ÙÙØ¹ BigInt
const bigInt = 1234567890123456789012345678901234567890n;
بÙ
ا Ø£Ù Ø£Ø±ÙØ§Ù
Ù
Ù ÙÙØ¹ BigInt ÙØØªØ§Ø¬ÙØ§ ÙØ§Ø¯Ø±Ø§Ù Ø ÙÙ ÙØªÙ
ØªØºØ·ÙØªÙا ÙÙØ§ Ø ÙÙ٠سÙÙØ±Ø¯ ÙÙØ§ ÙØµÙ Ù
خصص BigInt. Ø§ÙØ±Ø£Ù Ø¹ÙØ¯Ù
ا ØªØØªØ§Ø¬ ÙÙ
Ø«Ù ÙØ°Ù Ø§ÙØ£Ø±ÙاÙ
اÙÙØ¨Ùرة.
Ø§ÙØ£Ù BigInt Ù
ØªÙØ§ÙÙ Ù
ع ÙØ§ÙرÙÙÙØ³/ÙØ±ÙÙ
/Ø§ÙØ¯Ø¬/Ø³ÙØ§Ø±Ù ØÙÙÙ ÙÙØ³Øª Ù
ØªÙØ§ÙÙØ© Ù
ع Ø¥ÙØªØ±Ùت Ø§ÙØ³Ø¨ÙÙØ±Ø±
You can check MDN BigInt compatibility table to know which versions of a browser are supported.
اÙÙØµ
اÙÙØµ ÙÙ Ø¬Ø§ÙØ§ Ø³ÙØ±Ùبت ÙØªÙ Ø¥ØØ§Ø·ØªÙ Ø¨Ø¹ÙØ§Ù ات ØªÙØµÙص.
let str = "Hello";
let str2 = 'Single quotes are ok too';
let phrase = `can embed another ${str}`;
In JavaScript, there are 3 types of quotes.
- Ø¹ÙØ§Ù
ات Ø§ÙØªÙØµÙØµ اÙÙ
Ø²Ø¯ÙØ¬Ø©:
"Hello". - Ø¹ÙØ§Ù
ات Ø§ÙØªÙØµÙØµ اÙÙ
ÙØ±Ø¯Ø©:
'Hello'. - Ø§ÙØ¨Ø§Ù تÙÙ:
`Hello`.
Ø¹ÙØ§Ù ات Ø§ÙØªÙØµÙØµ اÙÙ Ø²Ø¯ÙØ¬Ø© ÙØ§ÙÙ ÙØ±Ø¯Ø© Ù٠ا Ø¹ÙØ§Ù ات ØªÙØµÙص âØ¨Ø³ÙØ·Ø©â . ع٠ÙÙØ§Ù ÙØ§ ÙÙØ¬Ø¯ بÙÙÙÙ ÙØ±Ù ÙÙ Ø¬Ø§ÙØ§ Ø³ÙØ±Ùبت.
Ø§ÙØ¨Ø§Ù تÙ٠عبارة Ø¹Ù Ø¹ÙØ§Ù
ات ØªÙØµÙص âÙ
Ù
تدة ÙØ¸ÙÙÙØ§Ùâ . تسÙ
Ø ÙÙØ§ بتضÙ
ÙÙ Ù
ØªØºÙØ±Ø§Øª ÙØªØ¹Ø¨Ùرات داخ٠اÙÙØµ ع٠طرÙÙ Ø¥ØØ§Ø·ØªÙÙ
ب ${â¦}Ø Ø¹Ù٠سبÙ٠اÙÙ
ثاÙ:
let name = "John";
// تضÙ
ÙÙ Ù
ØªØºÙØ±
alert( `Hello, ${name}!` ); // Hello, John!
// تضÙ
ÙÙ ØªØ¹Ø¨ÙØ±
alert( `the result is ${1 + 2}` ); // the result is 3
Ø§ÙØªØ¹Ø¨Ùر داخ٠${â¦} ÙØªÙ
تÙÙÙÙ
Ù ÙØ§ÙÙØªÙجة ØªØµØ¨Ø Ø¬Ø²Ø¡ Ù
٠اÙÙØµ. ÙØ³ØªØ·Ùع Ø£Ù ÙØ¶Ø¹ أ٠شئ ÙÙØ§Ù: Ù
ØªØºÙØ± Ù
ث٠name Ø£Ù ØªØ¹Ø¨ÙØ± Ø±ÙØ§Ø¶Ù Ù
ث٠1 + 2 أ٠شئ Ø£ÙØ«Ø± تعÙÙØ¯Ø§Ù.
Ù Ù ÙØ¶ÙÙ ØªØ°ÙØ± Ø§ÙØ¨Ø§Ù تÙÙ ÙØØ¯ÙØ§ ÙÙ Ù Ù ØªØ³ØªØ·ÙØ¹ ÙØ¹Ù ذÙÙ. Ø¹ÙØ§Ù ات Ø§ÙØªÙØµÙØµ Ø§ÙØ£Ø®Ø±Ù ÙØ§ ØªØØªÙ٠عÙ٠٠ث٠تÙ٠اÙÙØ¸ÙÙØ©!
alert( "the result is ${1 + 2}" ); // the result is ${1 + 2} (Ø¹ÙØ§Ù
ات Ø§ÙØªÙØµÙØµ اÙÙ
Ø²Ø¯ÙØ¬Ø© ÙØ§ ØªÙØ¹Ù شئ)
Ø³ÙØºØ·Ù اÙÙØµÙص بشئ Ù Ù Ø§ÙØªÙصÙÙ ÙÙ ÙØ°Ø§ اÙÙØµÙ Ø§ÙØ³Ùاس٠اÙÙØµÙØ©.
Ù٠بعض اÙÙØºØ§ØªØ ÙÙØ¬Ø¯ ÙÙØ¹ خاص âcharacterâ ÙØ¹Ø¨Ø± Ø¹Ù Ø§ÙØØ±Ù Ø§ÙÙØ§ØØ¯. For example,عÙ٠سبÙ٠اÙÙ Ø«Ø§ÙØ ÙÙ ÙØºØ© Ø³Ù ÙØ¬Ø§Ùا ÙØ¯Ø¹Ù âcharâ.
ÙÙ Ø¬Ø§ÙØ§ Ø³ÙØ±ÙØ¨ØªØ ÙØ§ ÙÙØ¬Ø¯ Ù
Ø«Ù ÙØ°Ø§ اÙÙÙØ¹. ÙÙØ¬Ø¯ ÙÙØ¹ ÙØ§ØØ¯ ÙÙØ·: string. اÙÙØµ ÙØ¯ ÙØªÙÙÙ Ù
Ù ØµÙØ± ØØ±Ù (ÙØµ ÙØ§Ø±Øº), ØØ±Ù ÙØ§ØØ¯ Ø£Ù Ø£ÙØ«Ø±.
Boolean (logical type)
اÙÙÙØ¹ boolean ÙØ¯ÙÙ ÙÙÙ
تÙÙ ÙÙØ·: ØµÙØ§Ø¨ and خطأ.
ÙØ°Ø§ اÙÙÙØ¹ ØºØ§ÙØ¨Ø§Ù ÙØ³ØªØ®Ø¯Ù
ÙØªØ®Ø²ÙÙ ÙÙÙ
ÙØ¹Ù
/ÙØ§ : true تعÙÙ âÙØ¹Ù
Ø ØµØÙØâØ Ù false تعÙÙ âÙØ§Ø خطأâ.
عÙ٠سبÙ٠اÙ٠ثاÙ:
let nameFieldChecked = true; // ÙØ¹Ù
Ø ØÙÙ Ø§ÙØ¥Ø³Ù
تÙ
Ø§ÙØªØ£Ø´Ùر عÙÙÙ
let ageFieldChecked = false; // ÙØ§Ø ØÙÙ Ø§ÙØ¹Ù
ر ÙÙ
ÙØªÙ
Ø§ÙØªØ£Ø´Ùر عÙÙÙ
اÙÙÙ٠اÙÙ ÙØ·ÙÙØ© ØªØ£ØªÙ Ø£ÙØ¶Ø§Ù ÙØªÙجة اÙÙ ÙØ§Ø±ÙØ©:
let isGreater = 4 > 1;
alert( isGreater ); // ÙØ¹Ù
(ÙØªÙجة اÙÙ
ÙØ§Ø±ÙØ© ÙÙ "ÙØ¹Ù
")
Ø³ÙØºØ·Ù اÙÙÙ٠اÙÙ ÙØ·ÙÙØ© بشÙ٠أع٠٠Ù٠اÙÙØµÙ Ø§ÙØ¹Ùا٠٠اÙÙ ÙØ·ÙÙØ©.
The ânullâ value
اÙÙÙÙ
Ø© Ø§ÙØ®Ø§ØµØ© null ÙØ§ ÙÙØªÙ
٠إÙ٠أ٠ÙÙØ¹ تÙ
شرØÙ Ø¨Ø§ÙØ£Ø¹ÙÙ.
Ø¥ÙÙ ÙÙÙÙ ÙÙØ¹ Ù
ÙÙØµÙ خاص Ù
Ù ÙÙØ³Ù ÙØØªÙ٠عÙÙ ÙÙÙ
Ø© ÙØ§ØØ¯Ø© ÙÙ null:
let age = null;
ÙÙ Ø¬Ø§ÙØ§ Ø³ÙØ±Ùبت Ø null ÙÙØ³Øª âÙ
رجع ÙÙØ§Ø¦Ù ØºÙØ± Ù
ÙØ¬ÙØ¯â Ø£Ù ânull pointerâ Ù
ث٠اÙÙ
ÙØ¬Ùد ÙÙ ÙØºØ§Øª أخرÙ.
Ø¥ÙÙØ§ ٠جرد ÙÙÙ Ø© خاصة تعبر ع٠âÙØ§ Ø´Ø¦â Ø£Ù âÙØ§Ø±Øºâ Ø£Ù âÙÙÙ Ø© ØºÙØ± ٠عرÙÙØ©â.
اÙÙÙØ¯ Ø£Ø¹ÙØ§Ù ÙÙØ¶Ø Ø£Ù age ØºÙØ± Ù
عرÙÙØ©.
The âundefinedâ value
اÙÙÙÙ
Ø© Ø§ÙØ®Ø§ØµØ© undefined Ø£ÙØ¶Ø§Ù ÙÙÙ
Ø© Ù
ØØ§Ùدة. Ø£ÙÙØ§ ØªØµÙØ¹ ÙÙØ¹ Ù
Ù ÙÙØ³Ùا Ù
ث٠null.
Ù
عÙÙ undefined Ø£Ù âØ§ÙÙÙÙ
Ø© ÙÙ
ÙØªÙ
تعÙÙÙÙØ§â.
Ø¹ÙØ¯Ù
ا ÙØªÙ
تعرÙÙ Ù
ØªØºÙØ±Ø ÙÙÙÙ ØºÙØ± Ù
عÙ٠اÙÙÙÙ
Ø©Ø Ø¹ÙØ¯Ùا تÙÙÙ ÙÙÙ
ت٠ÙÙ undefined:
let age;
alert(age); // ØªØ¸ÙØ± "undefined"
ÙÙÙØ§ÙØ ÙÙ
ÙÙ Ø§ÙØªØµØ±ÙØ Ø¨ØªØ¹ÙÙÙ ÙÙÙ
Ø© undefined ÙÙ
ØªØºÙØ±:
let age = 100;
// تغÙÙØ± اÙÙÙÙ
Ø© Ø¥ÙÙ undefined
age = undefined;
alert(age); // "undefined"
â¦ÙÙÙ ÙØ§ ÙÙØµØ بذÙÙ. ÙÙ Ø§ÙØ·Ø¨ÙØ¹ÙØ Ø§ÙØ´Ø®Øµ ÙØ³ØªØ®Ø¯Ù
null ÙØªØ¹ÙÙÙ ÙÙÙ
Ø© âÙØ§Ø±Øºâ Ø£Ù âØºÙØ± Ù
عرÙÙâ ÙÙ
ØªØºÙØ±Ø بÙÙÙ
ا undefined Ù
ØØ¬Ùزة ÙÙÙÙ
Ø© Ø¥ÙØªØ±Ø§Ø¶ÙØ© Ø£Ø³Ø§Ø³ÙØ© ÙÙØ£Ø´Ùاء ØºÙØ± اÙÙ
عÙÙØ©.
Objects and Symbols
اÙÙÙØ¹ ÙØ§Ø¦Ù ÙÙ ÙÙØ¹ خاص.
ÙÙ Ø§ÙØ£ÙÙØ§Ø¹ Ø§ÙØ£Ø®Ø±Ù ØªØ¯Ø¹Ù âØ¨Ø¯Ø§Ø¦ÙØ©â ÙØ£Ù ÙÙÙ ÙØ§ ØªØ³ØªØ·ÙØ¹ ÙÙØ· أ٠تخز٠شئ ÙØ§ØØ¯ (ÙØ¯ ÙÙÙÙ ÙØµ أ٠رÙ٠أ٠أ٠شئ). Ù٠اÙÙ ÙØ§Ø¨ÙØ Ø§ÙÙØ§Ø¦Ùات ØªØ³ØªØ®Ø¯Ù ÙØªØ®Ø²ÙÙ Ù Ø¬Ù ÙØ¹Ø© Ù Ù ÙÙØ¨ÙØ§ÙØ§Øª Ù ÙÙØ§Ùات Ø£ÙØ«Ø± تعÙÙØ¯Ø§Ù.
ÙÙÙÙÙØ§ Ø¨ÙØ°Ù Ø§ÙØ£ÙÙ ÙØ© Ø Ø§ÙÙØ§Ø¦Ùات تستØÙ Ù Ø¹Ø§Ù ÙØ© خاصة. Ø³ÙØªÙ Ø§ÙØªØ¹Ø§Ù ٠٠عÙÙ ÙØ§ØÙا٠ÙÙ ÙØ°Ø§ اÙÙØµÙ اÙÙØ§Ø¦ÙØ§ØªØ Ø¨Ø¹Ø¯ Ø£Ù ÙØªØ¹ÙÙ Ø£ÙØ«Ø± Ø¹Ù Ø§ÙØ£ÙÙØ§Ø¹ Ø§ÙØ¨Ø¯Ø§Ø¦ÙØ©.
اÙÙÙØ¹ symbol ÙØ³ØªØ®Ø¯Ù
ÙØ¥Ùشاء Ù
Ø¹Ø±ÙØ§Øª خاصة Ù
٠اÙÙØ§Ø¦Ùات. ÙØ¬Ø¨ Ø£Ù ÙØ°ÙرÙÙ
ÙÙØ§ Ù
Ù Ø£Ø¬Ù Ø§ÙØ¥ÙتÙ
Ø§ÙØÙÙÙ Ø³ÙØ¤Ø¬Ù Ø§ÙØªÙاصÙÙ ØØªÙ ÙØ¹Ø±Ù اÙÙØ§Ø¦Ùات.
The typeof operator
Ù
عاÙ
Ù typeof ÙØ±Ø¬Ø¹ ÙÙØ¹ ÙÙÙ
Ø© اÙÙ
Ø¯Ø®ÙØ§Øª. Ø¥ÙÙ Ù
ÙÙØ¯ Ø¹ÙØ¯Ù
ا ÙØ±Ùد Ù
Ø¹Ø§ÙØ¬Ø© ÙÙÙ
Ù
٠أÙÙØ§Ø¹ Ù
ختÙÙØ© Ø¨Ø¥Ø®ØªÙØ§Ù Ø£Ù ÙÙ
جرد إجراد ÙØØµ Ø³Ø±ÙØ¹ ÙÙÙÙØ¹ .
Ø¥ÙÙ ÙØ¯Ø¹Ù ÙÙØ¹ÙÙ Ù Ù Ø¨ÙØ§Ø¡ اÙÙÙØ¯:
- ÙÙ
عاÙ
Ù:
typeof x. - ÙØ¯Ø§ÙØ©:
typeof(x).
بÙÙ٠ات Ø£Ø®Ø±Ù Ø Ø¥ÙÙØ§ تع٠٠بأÙÙØ§Ø³ أ٠بدÙ٠أÙÙØ§Ø³. اÙÙØªÙجة ستÙÙÙ ÙØ§ØØ¯Ø©.
إستدعاء typeof x ÙØ±Ø¬Ø¹ ÙØµ بإسÙ
ÙÙØ¹ اÙÙÙÙ
Ø©:
typeof undefined // "undefined"
typeof 0 // "number"
typeof 10n // "bigint"
typeof true // "boolean"
typeof "foo" // "string"
typeof Symbol("id") // "symbol"
typeof Math // "object" (1)
typeof null // "object" (2)
typeof alert // "function" (3)
Ø§ÙØ«Ùاث Ø³Ø·ÙØ± Ø§ÙØ£Ø®Ùرة ÙØ¯ ØªØØªØ§Ø¬ ÙØªÙØ¶ÙØ إضاÙÙ:
MathÙØ§Ø¦Ù ٠د٠ج داخÙÙØ§Ù ÙØªØ¯Ø¹ÙÙ Ø§ÙØ¹Ù ÙÙØ§Øª Ø§ÙØ±ÙØ§Ø¶ÙØ©. Ø³ÙØªØ¹ÙÙ Ù Ù٠اÙÙØµÙ Ø§ÙØ£Ø¹Ø¯Ø§Ø¯. ÙÙØ§Ø ÙØ®Ø¯Ù ÙÙØ· Ù٠ثا٠ÙÙÙØ§Ø¦Ù.- ÙØªÙجة
typeof nullÙÙ"object". ÙØ°Ø§ Ø±Ø³Ù ÙØ§Ù ÙØ¹ØªØ¨Ø± خطأ Ù٠سÙÙÙtypeofØ ÙØ£ØªÙ Ù Ù Ø§ÙØ£ÙØ§Ù Ø§ÙØ£ÙÙÙ ÙØ¬Ø§Ùا Ø³ÙØ±Ø¨Øª ÙØªÙ Ø§ÙØÙØ§Ø¸ عÙÙÙ Ù Ù Ø£Ø¬Ù Ø§ÙØªÙاÙÙÙØ©. ÙØ·Ø¹Ø§ÙnullÙÙØ³ ÙØ§Ø¦Ù. Ø¥ÙÙ ÙÙÙ Ø© خاصة بÙÙØ¹ Ù ÙÙØµÙ خاص. - ÙØªÙجة
typeof alertÙÙ"function"Ø ÙØ£ÙalertØ¯Ø§ÙØ©. Ø³ÙØ¯Ø±Ø³ Ø§ÙØ¯Ùا٠Ù٠اÙÙØµÙ٠اÙÙØ§Ø¯Ù Ø© ÙÙÙØ§Ù Ø³ÙØ±Ù Ø£ÙÙ ÙØ§ ØªÙØ¬Ø¯ ÙÙØ¹ خاص âØ¯Ø§ÙØ©â ÙÙ Ø¬Ø§ÙØ§ Ø³ÙØ±Ø¨Øª. Ø§ÙØ¯ÙØ§Ù Ø§ÙØ¯ÙØ§Ù ØªÙØªÙ Ù ÙÙÙÙØ¹ ÙØ§Ø¦Ù. ÙÙÙtypeofتعا٠ÙÙ٠بشÙ٠٠ختÙÙØ ÙØ±Ø¬Ø¹"Ø¯Ø§ÙØ©". ÙØ°Ø§ Ø£ÙØ¶Ø§Ù ÙØ£ØªÙ Ù Ù Ø§ÙØ£ÙØ§Ù Ø§ÙØ£ÙÙÙ ÙØ¬Ø§Ùا Ø³ÙØ±Ø¨Øª. ÙÙÙØ§ÙØ Ù Ø«Ù ÙØ°Ø§ Ø§ÙØ³ÙÙÙ ØºÙØ± صØÙØØ ÙÙÙ ÙØ¯ ÙÙÙÙ Ù ÙØ§Ø¦Ù Ù٠اÙ٠٠ارسة.
Ø®ÙØ§ØµØ©
ÙÙØ¬Ø¯ 8 Ø£ÙÙØ§Ø¹ ÙÙØ¨ÙØ§ÙØ§Øª ÙÙ Ø¬Ø§ÙØ§ Ø³ÙØ±Ø¨Øª.
numberÙÙØ£Ø±Ùا٠٠٠أ٠ÙÙØ¹: صØÙØ Ø£Ù Ø¹Ø´Ø±ÙØ Ø§ÙØ£Ø¹Ø¯Ø§Ø¯ Ø§ÙØµØÙØØ© Ù ØØ¯Ùدة ب±(253-1).bigintÙ٠عدد صØÙØ Ø·ÙÙÙ ÙØ¨Ùر.stringÙÙÙØµÙص. اÙÙØµ ÙØ¯ ÙØØªÙ٠عÙÙ ØµÙØ± ØØ±Ù Ø£Ù Ø£ÙØ«Ø±Ø ÙØ§ ÙÙØ¬Ø¯ ÙÙØ¹ Ù ÙÙØµÙ ÙÙØØ±Ù Ø§ÙÙØ§ØØ¯.booleanÙ Ù Ø£Ø¬ÙØµÙاب/خطأ.nullÙÙÙÙÙ ØºÙØ± اÙ٠عرÙÙØ© â ÙÙØ¹ ÙØ§Ø¦Ù بذات٠ÙÙ ÙÙÙ Ø© ÙØ§ØØ¯Ø© ÙÙØ·null.undefinedÙÙÙÙÙ ØºÙØ± اÙ٠عÙÙØ© â ÙÙØ¹ ÙØ§Ø¦Ù بذات٠ÙÙ ÙÙÙ Ø© ÙØ§ØØ¯Ø© ÙÙØ·undefined.object٠٠أج٠ÙÙØ§ÙÙ Ø¨ÙØ§Ùات Ù Ø¹ÙØ¯Ø©.symbolÙ Ù Ø£Ø¬Ù Ù Ø¹Ø±ÙØ§Øª ÙØ±Ùدة.
Ù
عاÙ
Ù typeof ÙØ³Ù
Ø ÙÙØ§ بÙ
Ø¹Ø±ÙØ© ÙÙØ¹ Ø§ÙØ¨ÙØ§ÙØ§Øª اÙÙ
ÙØ¬Ùدة بداخ٠اÙÙ
ØªØºÙØ±Ø©.
- ÙÙ Ø´ÙÙØ§Ù:
typeof xØ£Ùtypeof(x). - ÙØ±Ø¬Ø¹ ÙØµ بإسÙ
ÙÙØ¹ Ø§ÙØ¨ÙØ§ÙØ§ØªØ Ù
Ø«Ù
"string". - Ù
٠أجÙ
nullÙØ±Ø¬Ø¹"object"â ÙØ°Ø§ خطأ Ù٠اÙÙØºØ©Ø Ø¥ÙÙ ÙÙØ³ ÙÙ Ø§ÙØÙÙÙØ© ÙØ§Ø¦Ù.
Ù٠اÙÙØµÙ٠اÙÙØ§Ø¯Ù Ø© Ø³ÙØ±Ùز عÙ٠اÙÙÙÙ Ø§ÙØ¨Ø¯Ø§Ø¦ÙØ© ÙØ¹Ùد٠ا ÙÙÙ٠٠تأÙÙÙ٠٠عاÙÙ Ø Ø³ÙØªØ¬Ù ÙÙÙØ§Ø¦Ùات.
Ø§ÙØªØ¹ÙÙÙØ§Øª
<code>Ø ÙÙÙÙØ«Ùر Ù Ù Ø§ÙØ³Ø·Ùر استخدÙ<pre>Ø ÙÙØ£Ùثر Ù Ù 10 Ø³Ø·ÙØ± استخد٠(plnkr, JSBin, codepenâ¦)