Ø¨ÛØ´ØªØ± Ù ÙØ§Ùع ع٠ÙÚ¯Ø±ÙØ§ Ù ÙØ§ÙÚ©Ø´ÙâÙØ§ Ø¨Ù Ø·ÙØ± Ø®ÙØ¯Ú©Ø§Ø± Ù ÙØ§Ø¯ÛØ±Û Ú©Ù Ø¨Ù Ø¢ÙÙØ§ داد٠٠ÛâØ´ÙØ¯ را ب٠ÙÙØ¹ صØÛØ ØªØ¨Ø¯ÛÙ Ù ÛâÚ©ÙÙØ¯. ب٠اÛÙ Ø¹Ù Ù âØªØ¨Ø¯ÛÙ ÙÙØ¹ داد٠(Type Conversions)â Ú¯ÙØªÙ Ù ÛâØ´ÙØ¯.
Ø¨Ø±Ø§Û ÙÙ
ÙÙÙ ÙØ§ÙÚ©Ø´Ù alert Ù
ÙØ¯Ø§Ø± ÙØ±ÙØ¯Û Ø®ÙØ¯ را ب٠ÙÙØ¹ دادÙâÛ string تبدÛÙ Ù
ÛâÚ©ÙØ¯. عÙ
ÙÚ¯Ø±ÙØ§Û Ø±ÛØ§Ø¶ÛØ§ØªÛ Ù
ÙØ§Ø¯Ûر را ب٠ÙÙØ¹ number تبدÛÙ Ù
ÛâÚ©ÙÙØ¯.
ÙÙ ÛÙØ·Ùر Ø´Ø±Ø§ÛØ·Û ÙØ¬Ùد دارد ک٠٠ا ÙÛØ§Ø² دارÛÙ Ù ÙØ¯Ø§Ø± را ب٠ÙÙØ¹ Ù ÙØ±Ø¯ ÙØ¸Ø±Ù ا٠تبدÛÙ Ú©ÙÛÙ .
در اÛ٠بخش در Ù ÙØ±Ø¯ object ÙØ§ ØµØØ¨Øª ÙÙ ÛâÚ©ÙÛÙ . ÙØ¹Ùا ÙÙØ· دربار٠اÙÙØ§Ø¹ اÙÙÛÙ (primitives) ØµØØ¨Øª Ù ÛâÚ©ÙÛÙ .
تبدÛ٠ب٠string
تبدÛ٠ب٠string ز٠اÙÛ Ø±Ø® Ù ÛâØ¯ÙØ¯ ک٠٠ا ب٠ÙÙØ¹ رشتÙâØ§Û Ú©Ø§Ø±Ø§Ú©ØªØ±ÙØ§Û ÛÚ© Ù ÙØ¯Ø§Ø± ÙÛØ§Ø² دارÛÙ .
Ø¨Ø±Ø§Û ÙÙ
ÙÙÙ alert(value) تبدÛ٠ب٠string را Ø¨Ø±Ø§Û ÙÙ
Ø§ÛØ´ Ø§ÙØ¬Ø§Ù
Ù
ÛâØ¯ÙØ¯.
ÙÙ
ÛÙØ·Ùر Ù
ÛâØªÙØ§ÙÛÙ
با صدا زد٠String(value) تبدÛÙ ÛÚ© Ù
ÙØ¯Ø§Ø± ب٠string را Ø§ÙØ¬Ø§Ù
دÙÛÙ
.
let value = true;
alert(typeof value); // boolean
value = String(value); // now value is a string "true"
alert(typeof value); // string
تبدÛ٠ب٠string عÙ
ÙÙ
ا ÙØ§Ø¶Ø است. false ب٠"null Ø "false ب٠"null" Ù Ø¨Ø±Ø§Û Ø¨ÙÛÙ Ù
ÙØ§Ø¯Ûر ÙÙ
ب٠ÙÙ
ÛÙ ØªØ±ØªÛØ¨ Ø§ÙØ¬Ø§Ù
Ù
ÛâØ´ÙØ¯.
تبدÛ٠ب٠number
تبدÛ٠ب٠number در ÙØ§ÙÚ©Ø´ÙâÙØ§ ٠عبارات Ø±ÛØ§Ø¶ÛØ§ØªÛ Ø¨Ù Ø·ÙØ± Ø®ÙØ¯Ú©Ø§Ø± Ø§ÙØ¬Ø§Ù Ù ÛâØ´ÙØ¯.
Ø¨Ø±Ø§Û ÙÙ
ÙÙÙ ÙÙØªÛ ØªÙØ³ÛÙ
/ بر رÙÛ Ù
ÙØ§Ø¯Ûر ØºÛØ± Ø¹Ø¯Ø¯Û Ø±Ø® Ù
ÛâØ¯ÙØ¯ :
alert( "6" / "2" ); // 3, strings are converted to numbers
بÙâ Ø·Ùرâ Ù
شخص Ø¨Ø±Ø§Û ØªØ¨Ø¯ÛÙ ÛÚ© Ù
ÙØ¯Ø§Ø± ب٠عدد Ù
ÛâØªÙØ§ÙÛÙ
از ÙØ§ÙÚ©Ø´Ù Number(value) Ø§Ø³ØªÙØ§Ø¯Ù Ú©ÙÛÙ
.
let str = "123";
alert(typeof str); // string
let num = Number(str); // becomes a number 123
alert(typeof num); // number
٠ع٠ÙÙØ§ ز٠اÙÛ Ú©Ù Ù ÙØ¯Ø§Ø±Û را از ÙØ±ÙØ¯Û ÙØ§Û ÛÚ© ÙØ±Ù Ø¯Ø±ÛØ§Ùت Ù ÛâÚ©ÙÛÙ ÙÙØ¹ داد٠اÛÙ ÙØ±ÙØ¯Û Ø¨Ù ØµÙØ±Øª رشت٠(string) Ù ÛâØ¨Ø§Ø´Ø¯ Ø¯Ø±ØØ§ÙÛ Ú©Ù Ø¨Ù ÙÙØ¹ Ø¹Ø¯Ø¯Û (Number) ÙØ±ÙØ¯Û ÙÛØ§Ø² دارÛÙ . ب٠ÙÙ ÛÙ Ø¹ÙØª Ø¨Ø§ÛØ¯ ÙØ±ÙØ¯Û Ø±Ø§ Ø¨Ù Ù ÙØ¯Ø§Ø± Ø¹Ø¯Ø¯Û (Number) تبدÛÙ Ú©ÙÛÙ .
اگر ÙØªÛØ¬ÙØ عدد Ù
Ø¹ØªØ¨Ø±Û ÙØ¨Ø§Ø´Ø¯ ÙØªÛج٠تبدÛÙ NaN Ø®ÙØ§Ùد Ø¨ÙØ¯. Ø¨Ø±Ø§Û ÙÙ
ÙÙÙ:
let age = Number("an arbitrary string instead of a number");
alert(age); // NaN, conversion failed
ÙÙØ§Ø¹Ø¯ تبدÛ٠ب٠number :
| Value | Becomes⦠|
|---|---|
undefined |
NaN |
null |
0 |
true and false |
1 and 0 |
string |
ÙØ§ØµÙÙâÙØ§Û خاÙÛ Ø§Ø¨ØªØ¯Ø§ Ù Ø§ÙØªÙا (شاÙ
Ù spaceÙØ§Ø tabÙØ§ \tÙ Ø®Ø·ÙØ· Ø¬Ø¯ÛØ¯ \n ٠دÛگر Ù
ÙØ§Ø±Ø¯) ØØ°Ù Ù
ÛâØ´ÙÙØ¯. اگر رشتÙâÛ Ø¨Ø§ÙÛ Ù
Ø§ÙØ¯Ù خاÙÛ Ø¨Ø§Ø´Ø¯ ÙØªÛج٠0 Ø®ÙØ§Ùد Ø¨ÙØ¯. در ØºÛØ± اÛÙØµÙرت عدد Ù
ÙØ¬Ùد در Ø±Ø´ØªÙ Ú©Ø§Ø±Ø§Ú©ØªØ±ÙØ§ Â«Ø®ÙØ§ÙدÙ» Ø®ÙØ§Ùد شد. اگر خطاÛÛ Ø±Ø® Ø¯ÙØ¯ ÙØªÛج٠NaN Ø®ÙØ§Ùد Ø¨ÙØ¯. |
Examples:
alert( Number(" 123 ") ); // 123
alert( Number("123z") ); // NaN (error reading a number at "z")
alert( Number(true) ); // 1
alert( Number(false) ); // 0
ÙØ·Ùا در ÙØ¸Ø± Ø¯Ø§Ø´ØªÙ Ø¨Ø§Ø´ÛØ¯ Ú©Ù null Ù undefined در اÛÙØ¬Ø§ Ù
ØªÙØ§Ùت عÙ
Ù Ù
ÛâÚ©ÙÙØ¯. Null ب٠0 تبدÛÙ Ù
ÛâØ´ÙØ¯ Ù undefined ب٠NaN تبدÛÙ Ù
ÛâØ´ÙØ¯.
ØªÙØ±Ûبا ÙÙ
ÙâÛ Ø¹Ù
ÙÚ¯Ø±ÙØ§Û Ø±ÛØ§Ø¶ÛØ§ØªÛØ Ù
ÙØ§Ø¯Ûر را ب٠عدد (number) تبدÛÙ Ù
ÛâÚ©ÙÙØ¯. تÙÙØ§ ÛÚ© Ø§Ø³ØªØ«ÙØ§ ÙØ¬Ùد دارد ٠آ٠+ است. اگر ÛÚ©Û Ø§Ø² Ù
ÙØ§Ø¯Ûر string Ø¨Ø§Ø´Ø¯Ø Ø¨ÙÛÙ Ù
ÙØ§Ø¯Ûر ÙÛØ² ب٠string تبدÛÙ Ù
ÛâØ´ÙÙØ¯.
سپس string ÙØ§ را بÙÙ Ù ÛâÚØ³Ø¨Ø§Ùد:
alert( 1 + '2' ); // '12' (string to the right)
alert( '1' + 2 ); // '12' (string to the left)
اÛÙ Ù ÙØ±Ø¯ ÙÙØ· ز٠اÙÛ Ø±ÙÛ Ù ÛØ¯Ùد Ú©Ù ØØ¯Ø§ÙÙ ÛÚ©Û Ø§Ø² Ù ÙØ§Ø¯Ûر string Ø¨Ø§Ø´Ø¯Ø Ø¯Ø± ØºÛØ± اÛÙØµÙرت ØªÙ Ø§Ù Ù ÙØ§Ø¯Ûر ب٠number تبدÛÙ Ù ÛâØ´ÙÙØ¯.
تبدÛ٠ب٠boolean
تبدÛ٠ب٠boolean آساÙâØªØ±ÛÙ ØØ§Ùت است.
اÛÙ Ù
ÙØ±Ø¯ در عÙ
ÙÛØ§Øª Ù
ÙØ·ÙÛ (Ù
اÙÙØ¯ عبارات Ø´Ø±Ø·Û Ú©Ù Ø¨Ø§ Ø¢ÙÙØ§ در بخشâÙØ§Û Ø¨Ø¹Ø¯Û Ø¢Ø´ÙØ§ Ø®ÙØ§ÙÛÙ
شد) رخ Ù
ÛâØ¯ÙØ¯. ÙÙ
ÛÙØ·Ùر Ø¨Ù ØµÙØ±Øª Ù
شخص ÙÛØ² Ù
ÛâØªÙØ§Ù با ÙØ§ÙÚ©Ø´Ù Boolean(value) اÛÙکار را Ø§ÙØ¬Ø§Ù
داد.
ÙØ§Ø¹Ø¯Ù تبدÛÙ :
- Ù
ÙØ§Ø¯ÛØ±Û Ú©Ù Ø¯Ø± Ø¸Ø§ÙØ± âØ®Ø§ÙÛâ ÙØ³ØªÙØ¯Ø Ù
اÙÙØ¯
0ØstringخاÙÛ ØnullØundefinedÙNaNبÙfalseتبدÛÙ Ù ÛâØ´ÙÙØ¯. - بÙÛÙ Ù
ÙØ§Ø¯Ûر بÙ
trueتبدÛÙ Ù ÛâØ´ÙÙØ¯.
Ø¨Ø±Ø§Û ÙÙ ÙÙÙ :
alert( Boolean(1) ); // true
alert( Boolean(0) ); // false
alert( Boolean("hello") ); // true
alert( Boolean("") ); // false
0 برابر با true Ø®ÙØ§Ùد Ø¨ÙØ¯Ø¨Ø±Ø®Û زباÙâÙØ§ (Ù
اÙÙØ¯ PHP) با "0" ب٠عÙÙØ§Ù false Ø¨Ø±Ø®ÙØ±Ø¯ Ù
ÛâÚ©ÙÙØ¯. اÙ
ا در Ø¬Ø§ÙØ§ اسکرÛپت ÙØ± string ÙÛ Ú©Ù Ø®Ø§ÙÛ ÙØ¨Ø§Ø´Ø¯ true Ø®ÙØ§Ùد Ø¨ÙØ¯.
alert( Boolean("0") ); // true
alert( Boolean(" ") ); // spaces, also true (any non-empty string is true)
Ø®ÙØ§ØµÙ
س٠ÙÙØ¹ تبدÛÙ ÙÙØ¹ Ø¯Ø§Ø¯ÙØ Ú©Ù Ø¨Ø·ÙØ± Ú¯Ø³ØªØ±Ø¯Ù Ù ÙØ±Ø¯ Ø§Ø³ØªÙØ§Ø¯Ù ÙØ±Ø§Ø± Ù ÛâÚ¯ÛØ±Ø¯Ø تبدÛ٠ب٠string Ø ØªØ¨Ø¯Û٠ب٠number ٠تبدÛ٠ب٠boolean است.
تبدÛ٠ب٠string â Ø²Ù
اÙÛ Ú©Ù Ù
ÛâØ®ÙØ§ÙÛÙ
Ø®Ø±ÙØ¬ÛâØ§Û Ø¯Ø§Ø´ØªÙ Ø¨Ø§Ø´ÛÙ
رخ Ù
ÛâØ¯ÙØ¯. از طرÛÙ String(value) ÙØ§Ø¨Ù Ø§ÙØ¬Ø§Ù
است. تبدÛ٠ب٠string Ù
عÙ
ÙÙØ§ ÙÙØªÛ Ù
ÙØ¯Ø§Ø± از اÙÙØ§Ø¹ اÙÙÛ٠داد٠(primitive values ) Ø§Ø³ØªØ ÙØ§Ø¶Ø Ø®ÙØ§Ùد Ø¨ÙØ¯.
تبدÛ٠ب٠number â Ø¯Ø± عÙ
ÙÚ¯Ø±ÙØ§Û Ø±ÛØ§Ø¶ÛØ§ØªÛ Ø±Ø® Ù
ÛâØ¯ÙØ¯. از طرÛÙ Number(value) ÙØ§Ø¨Ù Ø§ÙØ¬Ø§Ù
است.
اÛ٠تبدÛ٠از اÛÙ ÙÙØ§ÙÛÙ Ù¾ÛØ±ÙÛ Ù ÛâÚ©ÙØ¯ :
| Value | Becomes⦠|
|---|---|
undefined |
NaN |
null |
0 |
true / false |
1 / 0 |
string |
رشت٠ÙÙ
Ø§ÙØ·Ùر Ú©Ù Â«ÙØ³ØªÂ» Ø®ÙØ§Ùد٠Ù
ÛâØ´ÙØ¯ Ù ÙØ§ØµÙÙâÙØ§Û خاÙÛ (شاÙ
Ù spaceÙØ§Ø tabÙØ§ \tØ Ø®Ø·ÙØ· Ø¬Ø¯ÛØ¯ \n Ù ØºÛØ±Ù) ÙØ§Ø¯ÛØ¯Ù Ú¯Ø±ÙØªÙ Ù
ÛâØ´ÙÙØ¯. ÛÚ© رشت٠خاÙÛ 0 Ù
ÛâØ´ÙØ¯. Ø§Ø±ÙØ± NaN را ÙØªÛج٠Ù
ÛâØ¯ÙØ¯. |
تبدÛ٠ب٠boolean â Ø¯Ø± عÙ
ÙÚ¯Ø±ÙØ§Û Ù
ÙØ·ÙÛ Ø±Ø® Ù
ÛâØ¯ÙØ¯. از طرÛÙ Boolean(value) ÙØ§Ø¨Ù Ø§ÙØ¬Ø§Ù
است.
اÛ٠تبدÛ٠از اÛÙ ÙÙØ§ÙÛÙ Ù¾ÛØ±ÙÛ Ù ÛâÚ©ÙØ¯ :
| Value | Becomes⦠|
|---|---|
0, null, undefined, NaN, "" |
false |
| any other value | true |
اکثر اÛÙ ÙÙØ§ÙÛÙ Ø¢Ø³Ø§Ù Ø¨ÙØ¯Ù ٠ساد٠ب٠خاطر Ù Ûâ٠اÙÙØ¯. Ø§Ø³ØªØ«ÙØ§ÙاÛÛ Ú©Ù Ù Ø¹Ù ÙÙØ§ در آ٠اشتبا٠٠ÛâÚ©ÙÛÙ :
-
undefinedب٠عÙÙØ§Ù number برابرNaNØ®ÙØ§Ùد Ø¨ÙØ¯ Ù0ÙØ®ÙØ§ÙØ¯ Ø¨ÙØ¯. -
"0"Ù string ØØ§ÙÛ Ø¬Ø§Û Ø®Ø§ÙÛ" "ب٠عÙÙØ§Ùbooleanبرابر true Ø®ÙØ§ÙÙØ¯ Ø¨ÙØ¯.
در اÛÙØ¬Ø§ در Ù ÙØ±Ø¯ تبدÛÙ object ÙØ§ ØµØØ¨Øª ÙکردÛ٠٠در بخشâÙØ§Û Ø¨Ø¹Ø¯Û Ø¨Ù Ø¢ÙÙØ§ Ø®ÙØ§ÙÛ٠پرداخت.
ÙØ¸Ø±Ø§Øª
<code>Ø§Ø³ØªÙØ§Ø¯Ù Ú©ÙÛØ¯Ø Ø¨Ø±Ø§Û ÚÙØ¯Û٠خط â کد را درÙ٠تگ<pre>ÙØ±Ø§Ø± دÙÛØ¯Ø Ø¨Ø±Ø§Û Ø¨ÛØ´ از د٠خط کد â Ø§Ø² ÛÚ© جعبÙÙ Ø´ÙÛ Ø§Ø³ØªÙØ§Ø¯Ù Ú©ÙÛØ¯. (plnkrØ jsbinØ codepenâ¦)