در اÛÙ ÙØ³Ù ت Ø¨Ù ØµÙØ±Øª Ø®ÙØ§ØµÙ Ù Ø¨Ø§ØØ«Û را ک٠تا Ø¨Ù ØØ§Ù ÛØ§Ø¯ Ú¯Ø±ÙØªÙâØ§ÛÙ Ù Ø±ÙØ± Ù ÛâÚ©ÙÛÙ . اÛÙ Ù Ø¨Ø§ØØ« Ú©Ù Ø´Ø§Ù Ù ÙØÙÙâÛ ÙÙØ´ØªÙ Ø¯Ø³ØªÙØ±Ø§ØªØ ساخت ٠تغÛÙØ±Ø Ø´Ø±Ø·Ø ØÙÙ٠٠تابع ÙØ³ØªÙد اصÙ٠پاÛÙâÛ Ø²Ø¨Ø§Ù Ø¬Ø§ÙØ§Ø§Ø³Ú©Ø±Ûپت را تشکÛÙ Ù ÛâØ¯ÙÙØ¯. بعد از اÛÙ ÙØµÙ ÙØ§Ø±Ø¯ Ù Ø¨ØØ« Ø§Ø´ÛØ§Ø¡ در Ø¬Ø§ÙØ§Ø§Ø³Ú©Ø±Ûپت Ø®ÙØ§ÙÛ٠شد.
ساختار کد
Ø¯Ø³ØªÙØ±Ø§Øª (statementÙØ§) با ÙÙØ·ÙâÙÛØ±Ú¯Ù٠اÙÚ¯ÙÛØ³Û (;) از ÛکدÛگر جدا Ù ÛâØ´ÙÙØ¯.
alert('Hello'); alert('World');
٠ع٠ÙÙØ§Ù ÙÙ Û٠ک٠ب٠خط Ø¨Ø¹Ø¯Û Ù ÛâØ±ÙÛØ¯ ÙÛØ² Ø¨Ù Ù ÙØ²ÙÙâÛ Ø¬Ø¯Ø§Ø³Ø§Ø²Û Ø¯Ø³ØªÙØ±Ø§Øª در ÙØ¸Ø± Ú¯Ø±ÙØªÙ Ù ÛâØ´ÙØ¯Ø Ø¨ÙØ§Ø¨Ø±Ø§Û٠اÛ٠کد ÙÙ Ø¨Ù Ø¯Ø±Ø³ØªÛ Ú©Ø§Ø± Ù ÛâÚ©ÙØ¯:
alert('Hello')
alert('World')
ب٠اÛÙ Ù ÙØ¶Ùع «درج Ø®ÙØ¯Ú©Ø§Ø± ÙÛØ±Ú¯ÙÙâÙÙØ·Ù (automatic semicolon insertion)» Ú¯ÙØªÙ Ù ÛâØ´ÙØ¯. ÙÙÛ Ú¯Ø§ÙÛ Ø§ÙÙØ§Øª درست کار ÙÙ ÛâÚ©ÙØ¯Ø ٠ث٠اÛÙØ¬Ø§:
alert("There will be an error after this message")
[1, 2].forEach(alert)
در Ø¨ÛØ´ØªØ± سبکâÙØ§Û کدÙÙÛØ³Û Ù¾ÛØ´ÙÙØ§Ø¯ شد٠است Ú©Ù ØØªÙ ا٠بعد از ÙØ± Ø¯Ø³ØªÙØ± ÙÛØ±âÚ¯ÙÙâÙÙØ·Ù Ú¯Ø°Ø§Ø´ØªÙ Ø´ÙØ¯.
ÙØ§Ø²Ù ÙÛØ³Øª بعد از Ø¨ÙØ§Ú©âÙØ§Û کد {â¦} Ù Ø³Ø§Ø®ØªØ§Ø±ÙØ§ÛÛ Ú©Ù Ø¨Ø§ اÛÙ Ø¨ÙØ§Ú©âÙØ§ ساخت٠٠ÛâØ´ÙÙØ¯Ø ٠ث٠ØÙÙÙâÙØ§ ÙÛØ±Ú¯ÙÙâÙÙØ·Ù ÙØ±Ø§Ø± دÙÛØ¯.
function f() {
// بعد از ساخت ØªØ§Ø¨Ø¹Ø ÙÛØ§Ø²Û ب٠ÙÛØ±Ú¯ÙÙâÙÙØ·Ù ÙÛØ³Øª.
}
for(;;) {
// بعد از ØÙÙÙ ÙÛØ§Ø²Û ÙÛØ³Øª ÙÛØ±Ú¯ÙÙâÙÙØ·Ù Ø¨Ú¯Ø°Ø§Ø±ÛØ¯.
}
ÙÙÛ Ø¨Ø§ اÛÙ ØØ§Ù اگر ÙÛØ±Ú¯ÙÙâÙÙØ·ÙâÛ Ø§Ø¶Ø§ÙÛ Ø¯Ø± کد Ø®ÙØ¯ بÙÙÛØ³Ûد Ù Ø´Ú©ÙÛ Ø§ÛØ¬Ø§Ø¯ ÙÙ ÛâÚ©ÙØ¯ Ù ÙØ§Ø¯ÛØ¯Ù Ú¯Ø±ÙØªÙ Ù ÛâØ´ÙØ¯.
Ø¨Ø±Ø§Û Ø§Ø·ÙÙØ§Ø¹Ø§Øª Ø¨ÛØ´ØªØ± اÛÙØ¬Ø§ را ببÛÙÛØ¯ ساختار کد.
ØØ§Ùت Strict
Ø¨Ø±Ø§Û Ø§ÛÙک٠تÙ
اÙ
ÙØ§Ø¨ÙÛØªâÙØ§Û Ù
Ø¯Ø±Ù Ø¬Ø§ÙØ§Ø§Ø³Ú©Ø±Ûپت ÙØ¹ÙØ§Ù Ø´ÙØ¯ ÙØ§Ø²Ù
است Ú©Ù ÙØ§ÛÙ Ø¬Ø§ÙØ§Ø§Ø³Ú©Ø±Ûپت Ø®ÙØ¯ را با عبارت "use strict" Ø´Ø±ÙØ¹ Ú©ÙÛÙ
:
'use strict';
...
اÛÙ Ø¯Ø³ØªÙØ± Ù ÛâØªÙØ§Ùد در Ø§Ø¨ØªØ¯Ø§Û ÛÚ© ÙØ§ÛÙ Ø¬Ø§ÙØ§Ø§Ø³Ú©Ø±Ûپت ÛØ§ Ø§Ø¨ØªØ¯Ø§Û ÛÚ© تابع ÙÙØ´ØªÙ Ø´ÙØ¯.
بدÙÙ ÙÙØ´ØªÙ "use strict" ÙÙ
کد Ù
ا کار Ù
ÛâÚ©ÙØ¯Ø ÙÙÛ Ø¨Ø¹Ø¶Û ÚÛØ²Ùا در ØØ§Ùت ÙØ¯ÛÙ
Û Ø®ÙØ¯ عÙ
Ù Ù
ÛâÚ©ÙÙØ¯. Ù
ا Ù
عÙ
ÙÙØ§Ù Ø±ÙØªØ§Ø± Ù
در٠آÙâÙØ§ را ØªØ±Ø¬ÛØ Ù
ÛâØ¯ÙÛÙ
.
Ø¨Ø¹Ø¶Û Ø§Ø² ÙÛÚÚ¯ÛâÙØ§Û Ù
Ø¯Ø±Ù Ø¬Ø§ÙØ§Ø§Ø³Ú©Ø±Ûپت (Ù
Ø«Ù Ú©ÙØ§Ø³âÙØ§ ک٠بعدا٠ب٠آ٠Ù
ÛâØ±Ø³ÛÙ
) Ø¨Ù ØµÙØ±Øª Ø®ÙØ¯Ú©Ø§Ø± ٠بدÙ٠اÛÙÚ©Ù ÙÛØ§Ø²Û باشد "use strict" را بÙÙÛØ³ÛÙ
کد را در ØØ§Ùت strict اجرا Ù
ÛâÚ©ÙÙØ¯.
Ø¨Ø±Ø§Û Ø§Ø·ÙØ§Ø¹Ø§Øª Ø¨ÛØ´ØªØ± اÛÙØ¬Ø§ را ببÛÙÛØ¯: ØØ§Ùت Ù Ø¯Ø±ÙØ âuse strictâ.
٠تغÛÙØ±Ùا (Variables)
Ù ÛâØªÙØ§Ùد ب٠شکÙâÙØ§Û Ø²ÛØ± Ø³Ø§Ø®ØªÙ Ø´ÙØ¯:
letconst(Ø«Ø§Ø¨ØªØ ÙÙ ÛâØªÙØ§Ù Ù ÙØ¯Ø§Ø±Ø´ را تغÛÛØ± داد)var(سبک ÙØ¯ÛÙ ÛØ Ú©Ù Ø¨Ø¹Ø¯Ø§Ù ØªÙØ§ÙتâÙØ§ÛØ´ را Ù ÛâØ¨ÛÙÛÙ )
ÙØ§Ù ٠تغÛÙØ± Ù ÛâØªÙØ§Ùد شا٠٠اÛÙ Ù ÙØ§Ø±Ø¯ باشد: ØØ±ÙÙ Ù Ø§Ø±ÙØ§Ù Ø ÙÙÛ Ø§ÙÙÙÛ٠کاراکتر ÙÙ ÛâØªÙØ§Ùد رÙ٠باشد- . Ú©Ø§Ø±Ø§Ú©ØªØ±ÙØ§Û $ Ù _ ÙÙ Ù Ø«Ù Ø³Ø§ÛØ± ØØ±Ù٠اÙÙØ¨Ø§ ٠جاز ÙØ³ØªÙد- . ØØ±Ù٠اÙÙØ¨Ø§Û ØºÛØ± اÙÚ¯ÙÛØ³Û Ù ØØ±Ù٠تصÙÛØ±Û Ù٠٠جاز ÙØ³ØªÙØ¯Ø ÙÙÛ Ù Ø¹Ù ÙÙØ§Ù Ø§Ø³ØªÙØ§Ø¯Ù ÙÙ ÛâØ´ÙÙØ¯- .
ÙÙØ¹ ٠تغÛÙØ± Ù¾ÙÛØ§ است Ù ÙØ± ÙÙØ¹ Ù ÙØ¯Ø§Ø±Û را Ù ÛâØªÙØ§Ù در Ø¢Ù ÙÚ¯ÙØ¯Ø§Ø±Û کرد:
let x = 5;
x = "John";
8 ÙÙØ¹ Ø¯Ø§Ø¯Ù ÙØ¬Ùد دارد:
عدد(number)Ø¨Ø±Ø§Û Ø§Ø¹Ø¯Ø§Ø¯ Ø§Ø¹Ø´Ø§Ø±Û Ù Ø§Ø¹Ø¯Ø§Ø¯ صØÛØØbigintØ¨Ø±Ø§Û Ø§Ø¹Ø¯Ø§Ø¯ صØÛØ Ú©Ù Ø·ÙÙ Ø¯ÙØ®ÙØ§Ù Ø¯Ø§Ø±ÙØ¯ØØ±Ø´ØªÙ(string)Ø¨Ø±Ø§Û Ù ØªÙâÙØ§ØØ¨ÙÙÛÙ(boolean)Ø¨Ø±Ø§Û Ù ÙØ§Ø¯Ûر Ù ÙØ·ÙÛ:true/falseØnull: ÙÙØ¹Û Ú©Ù ÙÙØ· Ø¯Ø§Ø±Ø§Û Ù ÙØ¯Ø§Ø± خاصnullاست Ù ÙØ´Ø§ÙâØ¯ÙÙØ¯ÙâÛ âØ®Ø§ÙÛ Ø¨ÙØ¯Ùâ ÛØ§ "ÙØ¬Ùد ÙØ¯Ø§Ø´Øª"٠است.undefined: ÙÙØ¹Û Ú©Ù ÙÙØ· Ø¯Ø§Ø±Ø§Û Ù ÙØ¯Ø§Ø± خاصundefinedاست Ù ÙØ´Ø§ÙâØ¯ÙÙØ¯ÙâÛ Ø§Û٠است Ú©Ù ÚÛØ²Û âÙ ÙØ¯Ø§Ø±Ø¯ÙÛ ÙØ´Ø¯Ùâ.Ø´ÛØ¡(object)Ùsymbol: Ø¨Ø±Ø§Û Ø³Ø§Ø®ØªØ§Ø±ÙØ§Û اطÙÙØ§Ø¹Ø§ØªÛ Ù¾ÛÚÛØ¯Ù Ù Ø´ÙØ§Ø³Ø§ÙÚ¯Ø±ÙØ§Û Ù ÙØØµØ± Ø¨Ù ÙØ±Ø¯ Ú©Ù ÙÙÙØ² Ø¢ÙÙØ§ را ÛØ§Ø¯ ÙÚ¯Ø±ÙØªÙâØ§ÛÙ .
عÙ
Ùگر typeof ÙÙØ¹ ÙØ± Ù
ÙØ¯Ø§Ø±Û را در ÙØ§Ùب ÛÚ© رشت٠ب٠Ù
ا بر Ù
ÛâÚ¯Ø±Ø¯Ø§ÙØ¯ با Ø¯Ù Ø§Ø³ØªØ«ÙØ§Ø¡:
typeof null == "object" // اشتباÙÛ Ø¯Ø± Ø²Ø¨Ø§Ù Ø¬Ø§ÙØ§Ø§Ø³Ú©Ø±Ûپت
typeof function(){} == "function" // تابعâÙØ§ در Ø§ØµÙ Ø²ÛØ±Ù
جÙ
ÙØ¹ÙâØ§Û Ø§Ø² Ø§Ø´ÛØ§Ø¡ ÙØ³ØªÙد
Ø¨Ø±Ø§Û Ø§Ø·ÙØ§Ø¹Ø§Øª Ø¨ÛØ´ØªØ± Ù ØªØºÛØ±Ùا ٠اÙÙØ§Ø¹ داد٠را ببÛÙÛØ¯
تعا٠Ù
٠ا از Ù Ø±ÙØ±Ú¯Ø± ب٠عÙÙØ§Ù Ù ØÛØ· کار Ø®ÙØ¯ Ø§Ø³ØªÙØ§Ø¯Ù Ù ÛâÚ©ÙÛÙ Ø Ø¯Ø± اÛÙ Ù ØÛØ· ÚÙØ¯ تابع Ø¨Ø±Ø§Û Ø§Ø±ØªØ¨Ø§Ø· با کاربر ÙØ¬Ùد دارد:
prompt(question, [default])questionرا ب٠کاربر ÙÙ Ø§ÛØ´ Ù ÛâØ¯ÙØ¯ ک٠از ا٠٠ÛâØ®ÙØ§Ùد ٠تÙÛ Ø±Ø§ تاÛÙ¾ Ú©ÙØ¯. بعد ٠ت٠تاÛÙ¾ شد٠را بر Ù ÛâÚ¯Ø±Ø¯Ø§ÙØ¯. در ØµÙØ±ØªÛ ک٠کاربر رÙÛ âcancelâ Ú©ÙÛÚ© Ú©ÙØ¯ Ù ÙØ¯Ø§Ø±nullرا بر Ù ÛâÚ¯Ø±Ø¯Ø§ÙØ¯.confirm(question)questionرا ÙØ´Ø§Ù Ù ÛâØ¯ÙØ¯ Ù Ù ÙØªØ¸Ø± Ù ÛâÙ Ø§ÙØ¯ تا کاربر رÙÛ Ø¯Ú©Ù ÙâÛ cancel ÛØ§ ok Ú©ÙÛÚ© Ú©ÙØ¯. در ØµÙØ±Øª Ú©ÙÛÚ© رÙÛ ok Ù ÙØ¯Ø§Ø± true ٠در ØµÙØ±Øª Ú©ÙÛÚ© رÙÛ cancel ÛØ§ زد٠Esc Ù ÙØ¯Ø§Ø± false را بر٠ÛâÚ¯Ø±Ø¯Ø§ÙØ¯.alert(message)messageرا ب٠کاربر ÙÙ Ø§ÛØ´ Ù ÛâØ¯ÙØ¯
ت٠ا٠اÛÙ ØªÙØ§Ø¨Ø¹ modal ÙØ³ØªÙØ¯Ø Ø¢ÙÙØ§ Ø§Ø¬Ø±Ø§Û Ú©Ø¯ را ٠تÙÙÙ Ù ÛâÚ©ÙÙØ¯ ٠از تعا٠٠کاربر با ØµÙØÙ ØªØ§ ز٠اÙÛ Ú©Ù Ø¬ÙØ§Ø¨ Ø¨Ø¯ÙØ¯ جÙÙÚ¯ÛØ±Û Ù ÛâÚ©ÙÙØ¯.
٠ثاÙ:
let userName = prompt("Your name?", "Alice");
let isTeaWanted = confirm("Do you want some tea?");
alert( "Visitor: " + userName ); // Alice
alert( "Tea wanted: " + isTeaWanted ); // true
Ø§Ø·ÙØ§Ø¹Ø§Øª Ø¨ÛØ´ØªØ± در: تعا٠ÙÛ: alertØ promptØ confirm.
ع٠ÙÚ¯Ø±ÙØ§
Ø¬Ø§ÙØ§Ø§Ø³Ú©Ø±Ûپت از ع٠ÙÚ¯Ø±ÙØ§Û Ø²ÛØ± Ù¾Ø´ØªÛØ¨Ø§ÙÛ Ù ÛâÚ©ÙØ¯:
- ع٠ÙÚ¯Ø±ÙØ§Û Ù ØØ§Ø³Ø¨Ø§ØªÛ
- عÙ
ÙÚ¯Ø±ÙØ§Û عادÛ:
* + - /, Ù ÙÛØ²%Ø¨Ø±Ø§Û Ù ØØ§Ø³Ø¨ÙâÛ Ø¨Ø§ÙÛÙ Ø§ÙØ¯ÙâÛ ØªÙØ³ÛÙ Ù**Ø¨Ø±Ø§Û Ø¨Ù ØªÙØ§Ù Ø±Ø³Ø§ÙØ¯Ù اعداد.
ع٠Ùگر Ø¯ÙØ¯ÙÛÛ + رشتÙâÙØ§ را ب٠ÙÙ ÙØµÙ Ù ÛâÚ©ÙØ¯. ٠اگر ÛÚ©Û Ø§Ø² د٠طر٠اÛ٠ع٠Ùگر از ÙÙØ¹ Ø±Ø´ØªÙ Ø¨Ø§Ø´Ø¯Ø Ø·Ø±Ù Ø¯Ûگر Ø¨Ù ØµÙØ±Øª Ø®ÙØ¯Ú©Ø§Ø± ب٠رشت٠تبدÛÙ Ù ÛâØ´ÙØ¯.
```js run
alert( '1' + 2 ); // '12', string
alert( 1 + '2' ); // '12', string
```
- Ù ÙØ¯Ø§Ø±Ø¯ÙÛ (Assignments)
-
د٠ÙÙØ¹ Ù ÙØ¯Ø§Ø±Ø¯ÙÛ Ø¯Ø§Ø±ÛÙ : Ù ÙØ¯Ø§Ø±Ø¯ÙÛ Ù Ø¹Ù ÙÙÛ Ù Ø«Ù
a = bÙ Ù ÙØ¯Ø§Ø±Ø¯ÙÛ ØªØ±Ú©ÛØ¨Û Ù Ø«Ùa *= 2. - Ø¨ÛØªÛ (Bitwise)
-
ع٠ÙÚ¯Ø±ÙØ§Û Ø¨ÛØªÛ با اعداد 32 Ø¨ÛØªÛ در پاÛÛÙâØªØ±ÛÙ Ø³Ø·Ø ÛØ¹ÙÛ Ø¨ÛØª کار Ù ÛâÚ©ÙÙØ¯: ز٠اÙÛ Ú©Ù Ø¨Ù Ø¢ÙÙØ§ ÙÛØ§Ø² Ø¯Ø§Ø´ØªÛØ¯ Ø¨Ù Ù Ø³ØªÙØ¯Ø§Øª ٠راجع٠کÙÛØ¯.
- Ø´Ø±Ø·Û (Conditional)
-
تÙÙØ§ Ø§Ù¾Ø±Ø§ØªÙØ± 3 پارا٠ترÛ:
cond ? resultA : resultB. اگرcondtruthy باشدØresultAرا بر٠ÛâÚ¯Ø±Ø¯Ø§ÙØ¯Ø در ØºÛØ± اÛÙ ØµÙØ±ØªresultB. - ع٠ÙÚ¯Ø±ÙØ§Û Ù ÙØ·ÙÛ (Logical)
-
ع٠Ùگر Ù ÙØ·ÙÛ âÙâ
&&با ع٠Ùگر âÛØ§â||Ø§Ø±Ø²ÛØ§Ø¨Û Ú©ÙØªØ§Ù Ø§ÙØ¬Ø§Ù Ù ÛâØ¯ÙÙØ¯ ٠سپس Ù ÙØ¯Ø§Ø±Û Ú©Ù Ø§Ø±Ø²ÛØ§Ø¨Û در Ø¢ÙØ¬Ø§ ٠تÙÙÙ Ø´ÙØ¯ را بر٠ÛâگرداÙÙØ¯ (ÙÙ ØØªÙ اtrue/false). ع٠Ùگر Ù ÙØ·ÙÛ âÙÙÛâ!ع٠ÙÙÙØ¯ را بÙbooleanتبدÛÙ Ù ÛâÚ©ÙØ¯ Ù Ù ÙØ¯Ø§Ø± برعکس را بر٠ÛâÚ¯Ø±Ø¯Ø§ÙØ¯. - ع٠Ùگر Nullish coalescing
-
ع٠Ùگر
??راÙÛ Ø¨Ø±Ø§Û Ø§ÙØªØ®Ø§Ø¨ ÛÚ© Ù ÙØ¯Ø§Ø± تعرÛ٠شد٠از ÛÚ© ÙÛØ³Øª Ù ØªØºÛØ±Ùا را Ù ÙÛØ§ Ù ÛâÚ©ÙØ¯. ÙØªÛجÙâÛa ?? bبرابر باaاست ٠گر اÛÙک٠اÛÙ Ù ØªØºÛØ±null/undefinedباشد ک٠در اÛÙ ØµÙØ±Øª برابر باbاست. - ع٠ÙÚ¯Ø±ÙØ§Û Ù ÙØ§ÛسÙâØ§Û
-
ع٠Ùگر Ø¨Ø±Ø±Ø³Û ØªØ³Ø§ÙÛ (==) Ø¨Ø±Ø§Û Ù ÙØ§Ø¯ÛØ±Û Ú©Ù ÙÙØ¹ Ù ØªÙØ§ÙØªÛ Ø§Ø² ÛکدÛگر Ø¯Ø§Ø±ÙØ¯Ø ÙØ± د٠را ب٠ÙÙØ¹ عدد تبدÛÙ Ù ÛâÚ©ÙØ¯ (Ø¨Ù Ø§Ø³ØªØ«ÙØ§Û null Ù undefined ک٠اÛ٠د٠با ÙÙ Ø¨Ø±Ø§Ø¨Ø±ÙØ¯ ٠با ÙÛÚ ÚÛØ² دÛگر برابر ÙÛØ³ØªÙد)Ø Ù¾Ø³ اÛÙÙØ§ Ø¨Ø±Ø§Ø¨Ø±ÙØ¯:
alert( 0 == false ); // true alert( 0 == '' ); // trueØ³Ø§ÛØ± ع٠ÙÚ¯Ø±ÙØ§Û Ù ÙØ§ÛسÙâØ§Û ÙØ± د٠طر٠را تبدÛ٠ب٠عدد Ù ÛâÚ©ÙÙØ¯.
ع٠Ùگر Ø¨Ø±Ø±Ø³Û ØªØ³Ø§ÙÛ Ø³Ø®ØªâÚ¯ÛØ±Ø§ÙÙ
===تبدÛÙ ÙÙØ¹ را Ø§ÙØ¬Ø§Ù ÙÙ ÛâØ¯ÙØ¯: ÙÙØ¹ ÙØ§Û Ù ØªÙØ§Ùت Ø¨Ø±Ø§Û Ø§Û٠ع٠Ùگر ÙÙ ÛØ´Ù ب٠٠عÙÛ Ù ÙØ¯Ø§Ø±ÙØ§Û Ù ØªÙØ§Ùت است.Ù ÙØ§Ø¯Ûر
nullÙundefinedخاص ÙØ³ØªÙد. اÛÙ Ø¯Ù Ù ÙØ¯Ø§Ø± با Ù٠٠ساÙÛ Ø¯Ø± ÙØ¸Ø± Ú¯Ø±ÙØªÙ Ù ÛâØ´ÙÙØ¯ ٠با ÙÛÚ ÚÛØ² دÛÚ¯Ø±Û Ù Ø³Ø§ÙÛ ÙÛØ³ØªÙد.ع٠ÙÚ¯Ø±ÙØ§Û Ú©ÙÚکتر/بزرگتر رشتÙâÙØ§ را کاراکتر ب٠کاراکتر Ù Ø¨Ù ØªØ±ØªÛØ¨ ØØ±Ù٠اÙÙØ¨Ø§ Ù ÙØ§Ûس٠٠ÛâÚ©ÙÙØ¯Ø ٠بÙÛÙâÛ ÙÙØ¹âÙØ§ را ب٠عدد تبدÛÙ Ù ÛâÚ©ÙÙØ¯.
- Ø³Ø§ÛØ± ع٠ÙÚ¯Ø±ÙØ§
-
ع٠ÙÚ¯Ø±ÙØ§Û دÛÚ¯Ø±Û Ù Ø«Ù Ú©Ø§Ù Ø§ Ù ØºÛØ±Ù ÙÛØ² در Ø²Ø¨Ø§Ù Ø¬Ø§ÙØ§Ø§Ø³Ú©Ø±Ûپت ÙØ¬Ùد Ø¯Ø§Ø±ÙØ¯.
اطÙÙØ§Ø¹Ø§Øª Ø¨ÛØ´ØªØ± در: ع٠ÙÚ¯Ø±ÙØ§Û پاÛÙØ Ø±ÛØ§Ø¶ÛØ§ØªØ Ù ÙØ§ÛØ³Ù ÙØ§Ø ع٠Ùگر ÙØ§Û Ù ÙØ·ÙÛØ ع٠Ùگر Nullish coalescing '??'.
ØÙÙÙâÙØ§
-
تا Ø¨Ù ØØ§Ù با 3 ÙÙØ¹ ØÙÙÙ Ø¢Ø´ÙØ§ شدÛÙ :
// 1 while (condition) { ... } // 2 do { ... } while (condition); // 3 for(let i = 0; i < 10; i++) { ... } -
٠تغÛÙØ±Û ک٠درÙÙ
for(let...)ساخت٠٠ÛâØ´ÙØ¯ ÙÙØ· در درÙÙ Ø®ÙØ¯ ØÙÙÙ Ø¯ÛØ¯Ù Ù ÛâØ´ÙØ¯ Ù ÙØ§Ø¨Ù Ø§Ø³ØªÙØ§Ø¯Ù است. Ø§ÙØ¨ØªÙ ش٠ا Ù ÛâØªÙØ§ÙÛØ¯ Ú©ÙÙ ÙâÛletرا از اÛÙØ¬Ø§ ØØ°Ù Ú©ÙÛØ¯ تا از ÛÚ©Û Ø§Ø² ٠تغÛÙØ±ÙاÛÛ Ú©Ù Ø§Ø² ÙØ¨Ù ساختÙâØ§ÛØ¯ Ø§Ø³ØªÙØ§Ø¯Ù Ú©ÙÛØ¯. -
Ø¯Ø³ØªÙØ±ÙاÛ
break/continueب٠اجاز٠٠ÛâØ¯ÙÙØ¯ تا از Ú©Ù ØÙÙÙ ÛØ§ تکرار Ú©ÙÙÙÛ Ø®Ø§Ø±Ø¬ Ø´ÙÛÙ . از Ø¨Ø±ÚØ³Ø¨âÙØ§(labels) Ø¨Ø±Ø§Û Ø´Ú©Ø³ØªÙ ØÙÙÙâÙØ§Û ت٠در ØªÙ Ø§Ø³ØªÙØ§Ø¯Ù Ú©ÙÛØ¯.
Ø¬Ø²Ø¦ÛØ§Øª Ø¨ÛØ´ØªØ± را در: ØÙÙÙ ÙØ§: while Ù for .Ù Ø·Ø§ÙØ¹Ù Ú©ÙÛØ¯
بعدا٠ک٠با Ø§Ø´ÛØ§Ø¡ Ø¢Ø´ÙØ§ Ø´ÙÛÙ ÚÙØ¯ ٠د٠ØÙÙÙâÛ Ø¯Ûگر را ÙÛØ² در Ø¬Ø§ÙØ§Ø§Ø³Ú©Ø±Ûپت Ù ÛâØ¢Ù ÙØ²ÛÙ .
ساختار switch
ساختار âswitchâ Ù
ÛâØªÙØ§Ùد جاÛگزÛÙ ÚÙØ¯ Ø¨Ø±Ø±Ø³Û Ø§Ø² طرÛÙ if Ø¨Ø´ÙØ¯. در اÛ٠ساختار Ø¨Ù ØµÙØ±Øª Ø®ÙØ¯Ú©Ø§Ø± از === Ø¨Ø±Ø§Û Ù
ÙØ§ÛسÙâÙØ§ Ø§Ø³ØªÙØ§Ø¯Ù Ù
ÛâØ´ÙØ¯.
Ø¨Ø±Ø§Û Ù Ø«Ø§Ù:
let age = prompt('Your age?', 18);
switch (age) {
case 18:
alert("Won't work"); // ÙØªÛج٠عدد ÙÛØ³ØªØ بÙک٠رشت٠است
break;
case "18":
alert("This works!");
break;
default:
alert("Any value not equal to one above");
}
Ø¬Ø²Ø¦ÛØ§Øª Ø¨ÛØ´ØªØ± را در Ø¯Ø³ØªÙØ± "switch" Ù Ø·Ø§ÙØ¹Ù Ú©ÙÛØ¯.
تابعâÙØ§ (Functions)
٠ا تا Ø¨Ù ØØ§Ù با Ø³Ù Ø±ÙØ´ Ø¨Ø±Ø§Û Ø³Ø§Ø®Øª تابعâÙØ§ Ø¢Ø´ÙØ§ شدÛÙ :
-
Function Declaration:
function sum(a, b) { let result = a + b; return result; } -
Function Expression:
let sum = function(a, b) { let result = a + b; return result; }; -
تابع Ù¾ÛکاÙÛ (Arrow Function)
// عبارت س٠ت راست let sum = (a, b) => a + b; // ÛØ§ ٠د٠ÚÙØ¯ Ø®Ø·Û Ø¨Ø§ {...}Ø Ú©Ù Ø¯Ø± اÛÙ ØØ§Ùت Ø¨Ø§ÛØ¯ return :Ù٠بÙÙÛØ³Ûد let sum = (a, b) => { // ... return a + b; } // بدÙ٠آرگÙÙ Ø§Ù ÙØ±ÙØ¯Û let sayHi = () => alert("Hello"); // ÙÙØ· ÛÚ© آرگÙ٠ا٠let double = n => n * 2;
- تابعâÙØ§ Ù ÛâØªÙØ§ÙÙØ¯ Ø¯Ø§Ø±Ø§Û Ù ØªØºÛÙØ±ÙاÛÛ Ø¨Ø§Ø´ÙØ¯ ک٠داخ٠بدÙÙâÛ ØªØ§Ø¨Ø¹ ÛØ§ Ù¾Ø§Ø±Ø§Ù ØªØ±ÙØ§Û آ٠ساخت٠٠ÛâØ´ÙÙØ¯ ک٠ب٠آÙâÙØ§ ٠تغÛÙØ±ÙØ§Û Ù ØÙÙÛ Ù ÛâÚ¯ÙÛÛÙ . اÛÙ Ú¯ÙÙ٠٠تغÛÙØ±Ùا ÙÙØ· Ø¯Ø§Ø®Ù Ø®ÙØ¯ تابع Ø¯ÛØ¯Ù Ù ÛâØ´ÙÙØ¯ Ù ÙÙØ· در تابع ب٠آÙâÙØ§ Ø¯Ø³ØªØ±Ø³Û Ø¯Ø§Ø±ÛÙ .
- پاراÙ
ØªØ±ÙØ§Û تابع Ù
ÛâØªÙØ§ÙÙØ¯ Ù
ÙØ¯Ø§Ø± Ù¾ÛØ´âÙØ±Ø¶ Ø¨Ù¾Ø°ÛØ±Ùد:
function sum(a = 1, b = 2) {...} - تابعâÙØ§ ÙÙ
ÛØ´Ù ÚÛØ²Û را بر Ù
ÛâگرداÙÙØ¯. اگر داخ٠تابع Ø§ØµÙØ§Ù از Ø¯Ø³ØªÙØ±
returnØ§Ø³ØªÙØ§Ø¯Ù ÙØ´Ø¯Ù Ø¨Ø§Ø´Ø¯Ø ÙØªÛجÙundefinedÙ ÛâØ´ÙØ¯.
Ø¨Ø±Ø§Û Ù Ø´Ø§ÙØ¯ÙâÛ Ø¬Ø²Ø¦ÛØ§Øª Ø¨ÛØ´ØªØ± ØªÙØ§Ø¨Ø¹ (Functions) Ù Ù ÙØ§ÙÙ "function-expressions-arrows" Ù¾ÛØ¯Ø§ ÙØ´Ø¯ را ببÛÙÛØ¯.
ÙÙÙØ² Ø®ÛÙÛ Ù Ø·ÙØ¨ باÙÛ Ù Ø§ÙØ¯Ù است
Ù ÙØ§Ø±Ø¯ ÙÙ٠تÙÙØ§ Ø®ÙØ§ØµÙâØ§Û Ø§Ø² ÙØ§Ø¨ÙÛØªâÙØ§Û Ø¬Ø§ÙØ§Ø§Ø³Ú©Ø±Ûپت Ø¨ÙØ¯. تا Ø§ÙØ¢Ù ÙÙØ· ٠باÙÛ Ø§Û٠زبا٠را ÛØ§Ø¯ Ú¯Ø±ÙØªÙâØ§ÛÙ . در ادا٠٠با ÙØ§Ø¨ÙÛØªâÙØ§ Ù ÙÛÚÚ¯ÛâÙØ§Û ØØ±ÙÙâØ§Û Ø¬Ø§ÙØ§Ø§Ø³Ú©Ø±Ûپت Ø¢Ø´ÙØ§ Ø®ÙØ§ÙÛ٠شد.
ÙØ¸Ø±Ø§Øª
<code>Ø§Ø³ØªÙØ§Ø¯Ù Ú©ÙÛØ¯Ø Ø¨Ø±Ø§Û ÚÙØ¯Û٠خط â کد را درÙ٠تگ<pre>ÙØ±Ø§Ø± دÙÛØ¯Ø Ø¨Ø±Ø§Û Ø¨ÛØ´ از د٠خط کد â Ø§Ø² ÛÚ© جعبÙÙ Ø´ÙÛ Ø§Ø³ØªÙØ§Ø¯Ù Ú©ÙÛØ¯. (plnkrØ jsbinØ codepenâ¦)