ÙÙ Ø§ÙØ·Ùر ک٠از ÙØµÙ اÙÙØ§Ø¹ داد٠٠ÛâØ¯Ø§ÙÛÙ Ø 8 ÙÙØ¹ داد٠در Ø¬Ø§ÙØ§Ø§Ø³Ú©Ø±Ûپت ÙØ¬Ùد دارد. 7 Ù ÙØ±Ø¯ âØ§ÙÙÛÙ ÛØ§ اصÙÛâ ÙØ§Ù ÛØ¯Ù Ù ÛâØ´ÙÙØ¯Ø ب٠اÛ٠دÙÛÙ Ú©Ù Ù ÙØ¯Ø§Ø±ÙØ§Û Ø¢ÙÙØ§ ÙÙØ· Ø¯Ø§Ø±Ø§Û ÛÚ© ÚÛØ² است (Ø±Ø´ØªÙ ÛØ§ عدد ÛØ§ ÙØ± ÚÛØ²Û).
در Ù ÙØ§Ø¨ÙØ Ø´ÛØ¡Ùا (objects) Ø¨Ø±Ø§Û Ø°Ø®ÛØ±ÙâØ³Ø§Ø²Û Ù Ø¬Ù ÙØ¹ÙâØ§Û Ø§Ø² دادÙâÙØ§Û Ú¯ÙÙØ§Ú¯ÙÙ Ù ÚÛØ²ÙØ§Û Ù¾ÛÚÛØ¯ÙâØªØ± Ø§Ø³ØªÙØ§Ø¯Ù Ù ÛâØ´ÙÙØ¯. در Ø¬Ø§ÙØ§Ø§Ø³Ú©Ø±ÛÙ¾ØªØ Ø´ÛØ¡Ùا ØªÙØ±Ûبا Ø¨Ù ØªÙ Ø§Ù Ø¬ÙØ¨ÙâÙØ§Û زبا٠ÙÙÙØ° کردÙâØ§ÙØ¯. پس ٠ا Ø¨Ø§ÛØ¯ ÙØ¨Ù از اÛÙک٠ع٠ÛÙØ§ Ø¨Ù Ù ÙØ¶Ùع دÛÚ¯Ø±Û ÙØ§Ø±Ø¯ Ø´ÙÛÙ Ø´ÛØ¡Ùا را Ø¨Ø´ÙØ§Ø³ÛÙ .
ÛÚ© Ø´ÛØ¡ Ù
ÛâØªÙØ§Ùد با Ø¢Ú©ÙÙØ§Ø¯Ùا {...} Ù ÙÙ
را٠ÛÚ© ÙÛØ³Øª Ø§Ø®ØªÛØ§Ø±Û از ÙÛÚÚ¯ÛâÙØ§(property) Ø³Ø§Ø®ØªÙ Ø´ÙØ¯. ÛÚ© ÙÛÚÚ¯Û ÛØ¹ÙÛ ÛÚ© Ø¬ÙØª از âkey: valueâØ Ú©Ù Ø¯Ø± Ø¢Ù key ÛÚ© رشت٠است (Ø¨Ù Ø¢Ù âØ§Ø³Ù
ÙÛÚÚ¯Ûâ ÙÙ
Ù
ÛâÚ¯ÙÛÙØ¯) Ù value ÙØ± ÚÛØ²Û Ù
ÛâØªÙØ§Ùد باشد.
Ù ÛâØªÙØ§ÙÛÙ ÛÚ© Ø´ÛØ¡ را ب٠عÙÙØ§Ù ÛÚ© ÙÙØ³ÙâÛ Ø¯Ø§Ø±Ø§Û Ù¾Ø±ÙÙØ¯ÙâÙØ§Û Ø¹ÙØ§Ù ØªâØ¯Ø§Ø± ÙØ±Ø¶ Ú©ÙÛÙ . ÙØ± داد٠در پرÙÙØ¯ÙâÛ Ø®ÙØ¯Ø´ ØªÙØ³Ø· Ú©ÙÛØ¯ (key) Ø°Ø®ÛØ±Ù شد٠است. Ù¾ÛØ¯Ø§ Ú©Ø±Ø¯Ù ÛØ§ ØØ°Ù/اضاÙ٠کرد٠ÛÚ© پرÙÙØ¯Ù با Ø§Ø³Ù Ø¢Ù Ø±Ø§ØØª Ù ÛâØ´ÙØ¯.
ÛÚ© Ø´ÛØ¡ خاÙÛ (âÙÙØ³Ù خاÙÛâ) Ù ÛâØªÙØ§Ùد با Ø§Ø³ØªÙØ§Ø¯Ù از د٠سÛÙØªÚ©Ø³ Ø³Ø§Ø®ØªÙ Ø´ÙØ¯:
let user = new Object(); // "object constructor" سÛÙØªÚ©Ø³
let user = {}; // "object literal" سÛÙØªÚ©Ø³
٠ع٠ÙÙØ§Ø سÛÙØªÚ©Ø³ Ø¢Ú©ÙÙØ§Ø¯ Ø§Ø³ØªÙØ§Ø¯Ù Ù ÛâØ´ÙØ¯. ÛÚ© Ø´ÛØ¡ ک٠ب٠اÛÙ ØµÙØ±Øª تعرÛ٠شد٠باشد را Ø´ÛØ¡ ÙÛØªÙرا٠٠ÛâÙØ§Ù ÙØ¯.
ÙÛØªØ±Ø§ÙâÙØ§ Ù ÙÛÚÚ¯ÛâÙØ§
Ù
ا Ù
ÛâØªÙØ§ÙÛÙ
Ø¨ÙØ§ÙاصÙÙ ÙÛÚÚ¯ÛâÙØ§ÛÛ Ø±Ø§ Ø¨Ù ØµÙØ±Øª Ø¬ÙØªâÙØ§ÛÛ Ø§Ø² âÚ©ÙÛØ¯: Ù
ÙØ¯Ø§Ø±â (key: value) داخ٠{...} ÙØ±Ø§Ø± دÙÛÙ
:
let user = { // ÛÚ© Ø´ÛØ¡
name: "John", // را Ø°Ø®ÛØ±Ù Ú©ÙÛØ¯ "John" Ù
ÙØ¯Ø§Ø± "name" ØªÙØ³Ø·
age: 30 // Ù
ÙØ¯Ø§Ø± 30 را Ø°Ø®ÛØ±Ù Ú©ÙÛØ¯ "age" ØªÙØ³Ø·
};
ÛÚ© ÙÛÚÚ¯ÛØ ÙØ¨Ù از ":" Ø¯Ø§Ø±Ø§Û ÛÚ© Ú©ÙÛØ¯ (ÙÙ
ÚÙÛ٠ب٠عÙÙØ§Ù âØ§Ø³Ù
â ÛØ§ âØ´ÙØ§Ø³Ùâ ÙÙ
Ø´ÙØ§Ø®ØªÙ Ù
ÛâØ´ÙØ¯) Ù ÛÚ© Ù
ÙØ¯Ø§Ø± در سÙ
ت راست د٠ÙÙØ·Ù است.
در Ø´ÛØ¡ userØ Ø¯Ù ÙÛÚÚ¯Û ÙØ¬Ùد دارد:
- اÙÙÛÙ ÙÛÚÚ¯ÛØ اسÙ
"name"Ù Ù ÙØ¯Ø§Ø±"John"را دارد. - دÙÙ
ÛÙ ÙÛÚÚ¯ÛØ اسÙ
"age"Ù Ù ÙØ¯Ø§Ø±30را دارد.
Ø´ÛØ¡ user بدست Ø¢Ù
د٠Ù
ÛâØªÙØ§Ùد ب٠عÙÙØ§Ù ÛÚ© ÙÙØ³Ù با د٠پرÙÙØ¯ÙâÛ Ø¹ÙØ§Ù
ت دار با Ø¨Ø±ÚØ³Ø¨âÙØ§Û ânameâ Ù âageâ ÙØ±Ø¶ Ø´ÙØ¯.
٠ا Ù ÛâØªÙØ§ÙÛ٠در ÙØ± ز٠اÙÛ Ù¾Ø±ÙÙØ¯ÙâÙØ§ را اضاÙÙ ÛØ§ Ú©Ù Ú©ÙÛÙ ÛØ§ Ø¢ÙÙØ§ را Ø¨Ø®ÙØ§ÙÛÙ .
Ù ÙØ¯Ø§Ø±ÙØ§Û ÙÛÚÚ¯ÛâÙØ§ با Ø§Ø³ØªÙØ§Ø¯Ù از ÙÙØ·Ù ÙØ§Ø¨Ù Ø¯Ø³ØªØ±Ø³Û ÙØ³ØªÙد:
// Ù
ÙØ¯Ø§Ø±ÙØ§Û ÙÛÚÚ¯ÛâÙØ§Û Ø´ÛØ¡ را Ø¯Ø±ÛØ§Ùت Ú©ÙÛØ¯:
alert( user.name ); // John
alert( user.age ); // 30
Ù ÙØ¯Ø§Ø± Ù ÛâØªÙØ§Ùد ÙØ± ÚÛØ²Û باشد. Ø¨ÛØ§ÛÛØ¯ ÛÚ© Ù ÙØ¯Ø§Ø± از ÙÙØ¹ boolean اضاÙÙ Ú©ÙÛÙ :
user.isAdmin = true;
Ø¨Ø±Ø§Û ØØ°Ù ÛÚ© ÙÛÚÚ¯ÛØ از عÙ
Ùگر delete Ø§Ø³ØªÙØ§Ø¯Ù Ù
ÛâÚ©ÙÛÙ
:
delete user.age;
ÙÙ ÚÙÛÙ Ù ÛâØªÙØ§ÙÛ٠از اس٠âÙØ§Û ÚÙØ¯ Ú©ÙÙ ÙâØ§Û Ø¨Ø±Ø§Û ÙÛÚÚ¯Û Ø§Ø³ØªÙØ§Ø¯Ù Ú©ÙÛÙ Ø Ø§Ù Ø§ Ø¢ÙÙØ§ Ø¨Ø§ÛØ¯ درÙÙ Ú©ÙØªÛØ´Ù ÙØ±Ø§Ø± Ø¨Ú¯ÛØ±Ùد:
let user = {
name: "John",
age: 30,
"likes birds": true // اسÙ
âÙØ§Û ÚÙØ¯ Ú©ÙÙ
ÙâØ§ÛÙ ÙÛÚÚ¯Û Ø¨Ø§ÛØ¯ درÙÙ Ú©ÙØªÛØ´Ù Ø¨Ø§Ø´ÙØ¯
};
آخرÛÙ ÙÛÚÚ¯Û Ø¯Ø±ÙÙ ÙÛØ³Øª ÙÙ Ù ÛâØªÙØ§Ùد با کا٠ا Ù¾Ø§ÛØ§Ù ÛØ§Ø¨Ø¯:
let user = {
name: "John",
age: 30,
}
ب٠اÛÙ Ú©Ø§Ù Ø§Û âØ¯ÙØ¨Ø§ÙÙâØ¯Ø§Ø±â ÛØ§ â٠عÙÙâ Ù ÛâÚ¯ÙÛÙØ¯. اÛ٠کا٠ا اضاÙÙ/ØØ°Ù/کار کرد٠با ÙÛÚÚ¯ÛâÙØ§ را آساÙâØªØ± Ù ÛâÚ©ÙØ¯Ø ÚÙÙ ÙÙ ÙâÛ Ø®Ø·ÙØ· Ûکسا٠٠ÛâØ´ÙÙØ¯.
براکتâÙØ§
Ø¨Ø±Ø§Û ÙÛÚÚ¯ÛâÙØ§Û ÚÙØ¯ Ú©ÙÙ ÙâØ§ÛØ Ø¯Ø³ØªØ±Ø³Û Ø¯Ø§Ø´ØªÙ Ø¨Ø§ ÙÙØ·Ù Ù Ù Ú©Ù ÙÛØ³Øª:
// اÛÙ ÛÚ© Ø§Ø±ÙØ± سÛÙØªÚ©Ø³Û Ù
ÛâØ¯ÙØ¯
user.likes birds = true
Ø¬Ø§ÙØ§Ø§Ø³Ú©Ø±Ûپت ÚÙÛÙ ÚÛØ²Û را Ù
ØªÙØ¬Ù ÙÙ
ÛâØ´ÙØ¯. Ùکر Ù
ÛâÚ©ÙØ¯ Ù
ا user.likes را Ù
د ÙØ¸Ø± دارÛÙ
Ø Ù Ø³Ù¾Ø³ ÙÙØªÛ با Ú©ÙÙ
Ù ØºÛØ±Ù
ÙØªØ¸Ø±ÙâÛ birds Ø±ÙØ¨Ø±Ù Ù
ÛâØ´ÙØ¯ Ø§Ø±ÙØ± سÛÙØªÚ©Ø³Û Ù
ÛâØ¯ÙØ¯.
ÙÙØ·Ù ÙÛØ§Ø² دارد Ú©Ù Ú©ÙÛØ¯Ø ÛÚ© Ø´ÙØ§Ø³ÙâÛ Ù
عتبر Ù
ØªØºÛØ± باشد. ب٠اÛÙ Ù
عÙÛ Ú©Ù: ÙÛÚ ÙØ§ØµÙÙâØ§Û Ø¨ÛÙ Ø¢Ù ÙØ¨Ø§Ø´Ø¯Ø با عدد Ø´Ø±ÙØ¹ ÙØ´Ùد ٠شاÙ
Ù Ú©Ø§Ø±Ø§Ú©ØªØ±ÙØ§Û خاص ÙØ¨Ø§Ø´Ø¯ ($ Ù _ Ù
جاز ÙØ³ØªÙد).
ÛÚ© Ø´ÛÙÙâÛ Ø¬Ø§ÛگزÛÙ Ø¨Ù ÙØ§Ù âØ¨Ø±Ø§Ú©Øªâ ÙØ¬Ùد دارد ک٠با ÙØ± رشتÙâØ§Û Ú©Ø§Ø± Ù ÛâÚ©ÙØ¯:
let user = {};
// Ø§ÛØ¬Ø§Ø¯ کردÙ
user["likes birds"] = true;
// Ø¯Ø±ÛØ§Ùت کردÙ
alert(user["likes birds"]); // true
// ØØ°Ù کردÙ
delete user["likes birds"];
ØØ§Ùا ÙÙ Ù ÚÛØ² درست است. ÙØ·Ùا در ÙØ¸Ø± Ø¯Ø§Ø´ØªÙ Ø¨Ø§Ø´ÛØ¯ ک٠رشت٠درÙ٠براکتâÙØ§ Ø¨Ù Ø¯Ø±Ø³ØªÛ Ø¯Ø±ÙÙ Ú©ÙØªÛØ´Ù ÙØ±Ø§Ø± Ú¯Ø±ÙØªÙ باشد (ÙØ± ÙÙØ¹ Ú©ÙØªÛØ´ÙÛ ÙØ§Ø¨Ù ÙØ¨Ù٠است).
براکتâÙØ§Ø بدست Ø¢ÙØ±Ø¯Ù اس٠ÙÛÚÚ¯Û Ø§Ø² ÙØªÛجÙâÛ ÛÚ© عبارت را ÙÙ ÙØ±Ø§ÙÙ Ù ÛâÚ©ÙÙØ¯Ø ÛØ¹ÙÛ ÛÚ© رشتÙâÛ Ø«Ø§Ø¨Øª ÙØ¨Ø§Ø´Ø¯Ø Ù Ø«ÙØ§ از ÛÚ© Ù ØªØºÛØ± ک٠ب٠اÛÙ Ø´Ú©Ù Ø§ÙØ¬Ø§Ù Ù ÛâÚ¯ÛØ±Ø¯:
let key = "likes birds";
// user["likes birds"] = true; Ù
شاب٠است با
user[key] = true;
اÛÙØ¬Ø§Ø Ù
ØªØºÛØ± key Ø´Ø§ÛØ¯ ÙÙگاÙ
Ø§Ø¬Ø±Ø§Û Ú©Ø¯ بدست Ø¢ÛØ¯ ÛØ§ ÙØ§Ø¨Ø³ØªÙ ب٠ÚÛØ²Û ک٠کاربر ÙØ§Ø±Ø¯ Ù
ÛâÚ©ÙØ¯ باشد. سپس Ù
ا از Ø¢Ù Ø¨Ø±Ø§Û Ø¯Ø³ØªØ±Ø³Û Ø¨Ù ÙÛÚÚ¯Û Ø§Ø³ØªÙØ§Ø¯Ù Ù
ÛâÚ©ÙÛÙ
. Ø§Ø³ØªÙØ§Ø¯Ù از براکت ب٠Ù
ا Ø§ÙØ¹Ø·Ø§Ù Ø®ÛÙÛ Ø²ÛØ§Ø¯Û Ù
ÛâØ¯ÙØ¯.
Ø¨Ø±Ø§Û Ù Ø«Ø§Ù:
let user = {
name: "John",
age: 30
};
let key = prompt("ÚÙ ÚÛØ²Û را Ù
ÛâØ®ÙØ§ÙÛØ¯ دربار٠کاربر بداÙÛØ¯Ø", "name");
// Ø¯Ø³ØªØ±Ø³Û ØªÙØ³Ø· Ù
ØªØºÛØ±
alert( user[key] ); // John :ÙØ§Ø±Ø¯ Ø´ÙØ¯ "name" اگر
ÙÙØ·Ù ÙÙ ÛâØªÙØ§Ùد ب٠ÙÙ Ø§Ù Ø´Ú©Ù Ø§Ø³ØªÙØ§Ø¯Ù Ø´ÙØ¯:
let user = {
name: "John",
age: 30
};
let key = "name";
alert( user.key ) // undefined
ÙÛÚÚ¯ÛâÙØ§Û Ù ØØ§Ø³Ø¨Ø§ØªÛ
٠ا Ù ÛâØªÙØ§ÙÛ٠ز٠اÙÛ Ú©Ù ÛÚ© Ø´ÛØ¡ ÙÛØªØ±Ø§Ù تعرÛÙ Ù ÛâÚ©ÙÛÙ Ø Ø§Ø² براکتâÙØ§ درÙÙ Ø¢Ù Ø§Ø³ØªÙØ§Ø¯Ù Ú©ÙÛÙ . اÛ٠کار سبب Ø§ÛØ¬Ø§Ø¯ ÙÛÚÚ¯ÛâÙØ§Û Ù ØØ§Ø³Ø¨Ø§ØªÛ Ù ÛâØ´ÙØ¯.
Ø¨Ø±Ø§Û Ù Ø«Ø§Ù:
let fruit = prompt("ÙØµØ¯ Ø®Ø±ÛØ¯ کداÙ
Ù
ÛÙ٠را Ø¯Ø§Ø±ÛØ¯Ø", "apple");
let bag = {
[fruit]: 5, // Ú¯Ø±ÙØªÙ Ù
ÛâØ´ÙØ¯ fruit اسÙ
ÙÛÚÚ¯Û Ø§Ø² Ù
ØªØºÛØ±
};
alert( bag.apple ); // 5 :باشد fruit="apple" اگر
Ù
عÙÛ ÙÛÚÚ¯Û Ù
ØØ§Ø³Ø¨Ø§ØªÛ ساد٠است: [fruit] ب٠اÛÙ Ù
عÙÛ Ø§Ø³Øª ک٠اسÙ
ÙÛÚÚ¯Û Ø¨Ø§ÛØ¯ از Ù
ØªØºÛØ± fruit Ú¯Ø±ÙØªÙ Ø´ÙØ¯.
Ø¨ÙØ§Ø¨Ø±Ø§Û٠اگر ÛÚ© Ø¨Ø§Ø²Ø¯ÛØ¯Ú©ÙÙØ¯Ù "apple" را ÙØ§Ø±Ø¯ Ú©ÙØ¯Ø bag اÛÙÚ¯ÙÙÙ Ø®ÙØ§Ùد شد: {apple: 5}.
در Ø§ØµÙØ کد Ø¨Ø§ÙØ§ ٠اÙÙØ¯ کد پاÛÛ٠کار Ù ÛâÚ©ÙØ¯:
let fruit = prompt("ÙØµØ¯ Ø®Ø±ÛØ¯ ÚÙ Ù
ÛÙÙâØ§Û Ø¯Ø§Ø±ÛØ¯Ø", "apple");
let bag = {};
// Ú¯Ø±ÙØªÙ Ù
ÛâØ´ÙØ¯ fruit اسÙ
ÙÛÚÚ¯Û Ø§Ø² Ù
ØªØºÛØ±
bag[fruit] = 5;
â¦Ø§Ù ا Ø²ÛØ¨Ø§ØªØ± Ø¨Ù ÙØ¸Ø± Ù ÛâØ±Ø³Ø¯.
٠ا Ù ÛâØªÙØ§ÙÛ٠از عبارات Ù¾ÛÚÛØ¯ÙâØªØ±Û Ø¯Ø±Ù٠براکت Ø§Ø³ØªÙØ§Ø¯Ù Ú©ÙÛÙ :
let fruit = 'apple';
let bag = {
[fruit + 'Computers']: 5 // bag.appleComputers = 5
};
براکتâÙØ§ ÙØ¯Ø±Øª Ø¨Ø³ÛØ§Ø± Ø¨ÛØ´ØªØ±Û ÙØ³Ø¨Øª ب٠ÙÙØ·Ù Ø¯Ø§Ø±ÙØ¯. Ø¢ÙÙØ§ ÙØ± ÙÙØ¹ اس٠ÙÛÚÚ¯Û Ù Ù ØªØºÛØ± را Ù Ù Ú©Ù Ù ÛâØ³Ø§Ø²ÙØ¯. ا٠ا Ø¢ÙÙØ§ Ø¨Ø±Ø§Û ÙÙØ´ØªÙ Ø¯Ø´ÙØ§Ø±ØªØ± ÙØ³ØªÙد.
پس اکثر اÙÙØ§ØªØ ز٠اÙÛ Ú©Ù Ø§Ø³Ù âÙØ§Û ÙÛÚÚ¯ÛâÙØ§ Ø´ÙØ§Ø®ØªÙ Ø´Ø¯Ù Ù Ø³Ø§Ø¯Ù ÙØ³ØªÙØ¯Ø ÙÙØ·Ù Ø§Ø³ØªÙØ§Ø¯Ù Ù ÛâØ´ÙØ¯. اگر ٠ا ب٠ÚÛØ²Û Ù¾ÛÚÛØ¯ÙâØªØ± ÙÛØ§Ø² داشت٠باشÛÙ Ø Ø³Ù¾Ø³ ب٠سراغ براکتâÙØ§ Ù ÛâØ±ÙÛÙ .
Ø®ÙØ§ØµÙ ÙÙÛØ³Û Ù ÙØ¯Ø§Ø± ÙÛÚÚ¯Û
در کدÙÙÛØ³Û ÙØ§ÙØ¹Û Ù Ø¹Ù ÙÙØ§ ÙÛØ§Ø² دارÛ٠ک٠از Ù ØªØºÛØ±ÙØ§Û Ù ÙØ¬Ùد ب٠عÙÙØ§Ù Ù ÙØ¯Ø§Ø± Ø¨Ø±Ø§Û ÙÛÚÚ¯ÛâÙØ§ Ø§Ø³ØªÙØ§Ø¯Ù Ú©ÙÛÙ .
Ø¨Ø±Ø§Û Ù Ø«Ø§Ù:
function makeUser(name, age) {
return {
name: name,
age: age,
// ...ÙÛÚÚ¯ÛâÙØ§Û دÛگر
};
}
let user = makeUser("John", 30);
alert(user.name); // John
در Ù Ø«Ø§Ù Ø¨Ø§ÙØ§Ø ÙÙÛÚÚ¯ÛâÙØ§ Ø§Ø³Ù Û Ù Ø´Ø§Ø¨Ù Ø¨Ø§ Ù ØªØºÛØ±Ùا Ø¯Ø§Ø±ÙØ¯. اÛÙ Ù ÙØ¶Ùع Ú©Ù ÛÚ© ÙÛÚÚ¯Û Ø±Ø§ از ÛÚ© Ù ØªØºÛØ± بسازÛÙ Ø¨Ø³ÛØ§Ø± Ø±Ø§ÛØ¬ Ø§Ø³ØªØ Ø¨Ù ÙÙ Û٠دÙÛÙ ÛÚ© Ø®ÙØ§ØµÙâÙÙÛØ³ÛÙ Ù ÙØ¯Ø§Ø±Ù ÙÛÚÚ¯Û Ø¨Ø±Ø§Û Ú©ÙØªØ§ÙâØªØ± Ú©Ø±Ø¯Ù Ø¢Ù ÙØ¬Ùد دارد.
Ø¨Ù Ø¬Ø§Û name: name Ù
ÛâØªÙØ§ÙÛÙ
ÙÙØ· بÙÙÛØ³ÛÙ
nameØ Ù
ث٠کد پاÛÛÙ:
function makeUser(name, age) {
return {
name, // name: name Ù
شاب٠با
age, // age: age Ù
شاب٠با
// ...
};
}
٠ا Ù ÛâØªÙØ§ÙÛ٠در ÛÚ© Ø´ÛØ¡Ø Ù٠از Ø®ÙØ§ØµÙâÙÙÛØ³Û Ø§Ø³ØªÙØ§Ø¯Ù Ú©ÙÛÙ Ù٠از ÙÛÚÚ¯ÛâÙØ§Û ÙØ±Ù اÙ:
let user = {
name, // name: name Ù
شاب٠با
age: 30
};
Ù ØØ¯ÙØ¯ÛØª اس٠âÙØ§Û ÙÛÚÚ¯ÛâÙØ§
ÙÙ Ø§ÙØ·Ùر ک٠از ÙØ¨Ù Ù ÛâØ¯Ø§ÙÛÙ Ø ÛÚ© Ù ØªØºÛØ± ÙÙ ÛâØªÙØ§Ùد Ø§Ø³Ù Û Ø¨Ø±Ø§Ø¨Ø± با Ú©ÙÙ Ø§ØªÛ Ú©Ù ØªÙØ³Ø· زبا٠رزر٠شدÙâØ§ÙØ¯ داشت٠باشد ٠اÙÙØ¯ âforâ Ù âletâØ âreturnâ Ù ØºÛØ±Ù.
ا٠ا Ø¨Ø±Ø§Û ÙÛÚÚ¯Û ÛÚ© Ø´ÛØ¡Ø ÚÙÛÙ Ù ØØ¯ÙØ¯ÛØªÛ ÙØ¬Ùد ÙØ¯Ø§Ø±Ø¯:
// اÛÙ ÙÛÚÚ¯ÛâÙØ§ ÙØ§Ø¨Ù ÙØ¨ÙÙ ÙØ³ØªÙد
let obj = {
for: 1,
let: 2,
return: 3
};
alert( obj.for + obj.let + obj.return ); // 6
Ø¨Ù Ø·ÙØ± Ø®ÙØ§ØµÙØ ÙÛÚ Ù ØØ¯ÙØ¯ÛØªÛ Ø¨Ø±Ø§Û Ø§Ø³Ù âÙØ§Û ÙÛÚÚ¯ÛâÙØ§ ÙØ¬Ùد ÙØ¯Ø§Ø±Ø¯. Ø¢ÙÙØ§ Ù ÛâØªÙØ§ÙÙØ¯ ÙØ± رشتÙâØ§Û ÛØ§ symbol (ÛÚ© ÙÙØ¹ داد٠خاص Ø¨Ø±Ø§Û Ø´ÙØ§Ø³ÙâÙØ§Ø بعدا Ø¢ÙÙØ§ را ÛØ§Ø¯ Ù ÛâÚ¯ÛØ±ÛÙ ) Ø¨Ø§Ø´ÙØ¯.
اÙÙØ§Ø¹ دÛگر Ø¨Ù Ø·ÙØ± Ø®ÙØ¯Ú©Ø§Ø± ب٠رشت٠تبدÛÙ Ù ÛâØ´ÙÙØ¯.
Ø¨Ø±Ø§Û Ù
Ø«Ø§ÙØ عدد 0 زÙ
اÙÛ Ú©Ù Ø¨Ù Ø¹ÙÙØ§Ù ÛÚ© اسÙ
ÙÛÚÚ¯Û Ø§Ø³ØªÙØ§Ø¯Ù Ù
ÛâØ´ÙØ¯Ø ب٠رشت٠"0" تبدÛÙ Ù
ÛâØ´ÙØ¯.
let obj = {
0: "test" // "0": "test" Ù
شاب٠با
};
// ب٠ÛÚ© ÙÛÚÚ¯Û Ø¯Ø³ØªØ±Ø³Û Ø®ÙØ§ÙÙØ¯ داشت (عدد 0 ب٠رشت٠"0" تبدÛÙ Ù
ÛâØ´ÙØ¯) alert ÙØ± دÙ
alert( obj["0"] ); // test
alert( obj[0] ); // test (ÙÛÚÚ¯Û ÛکساÙ)
ÛÚ© Ù
Ø´Ú©Ù Ø¬Ø²Ø¦Û Ø¨Ø§ ÛÚ© ÙÛÚÚ¯Û Ø®Ø§Øµ Ø¨Ù ÙØ§Ù
__proto__ ÙØ¬Ùد دارد. Ù
ا ÙÙ
ÛâØªÙØ§ÙÛÙ
Ù
ÙØ¯Ø§Ø±Û Ú©Ù Ø´ÛØ¡ ÙØ¨Ø§Ø´Ø¯ را برابر با Ø¢Ù ÙØ±Ø§Ø± دÙÛÙ
:
let obj = {};
obj.__proto__ = 5; // Ù
ÙØ¯Ø§Ø±Ø¯ÙÛ ÛÚ© عدد
alert(obj.__proto__); // [object Object] - Ù
ÙØ¯Ø§Ø± ÛÚ© Ø´ÛØ¡ است Ù Ø¢Ù Ø·ÙØ± Ú©Ù Ø§ÙØªØ¸Ø§Ø± Ù
ÛâØ±ÙØª کار Ùکرد
ÙÙ
Ø§ÙØ·Ùر ک٠در کد Ø¨Ø§ÙØ§ Ø¯ÛØ¯ÛÙ
Ø Ø¨Ø±Ø§Ø¨Ø± ÙØ±Ø§Ø± داد٠با ÛÚ© Ù
ÙØ¯Ø§Ø± اصÙÛ(primitive) ÛØ¹ÙÛ 5 ÙØ§Ø¯ÛØ¯Ù Ú¯Ø±ÙØªÙ شد.
Ù
ا Ø·Ø¨ÛØ¹Øª __proto__ را در ÙØµÙâÙØ§Û بعد Ù¾ÙØ´Ø´ Ù
ÛâØ¯ÙÛÙ
٠راÙâÙØ§ÛÛ Ø±Ø§ Ø¨Ø±Ø§Û Ø¯Ø±Ø³Øª کرد٠ÚÙÛÙ Ø±ÙØªØ§Ø±Û Ù¾ÛØ´ÙÙØ§Ø¯ Ù
ÛâÚ©ÙÛÙ
.
Ø¨Ø±Ø±Ø³Û Ù ÙØ¬ÙØ¯ÛØª ÙÛÚÚ¯Û Ø¨Ø§ ع٠Ùگر âinâ
ÛÚ© Ø®ØµÙØµÛت Ø´Ø§ÛØ§Ù ذکر Ø´ÛØ¡Ùا در Ø¬Ø§ÙØ§Ø§Ø³Ú©Ø±ÛÙ¾ØªØ Ø¯Ø± Ù ÙØ§Ûس٠با Ø¨Ø³ÛØ§Ø±Û از زباÙâÙØ§Û دÛÚ¯Ø±Ø Ø§Û٠است Ú©Ù Ø§Ù Ú©Ø§Ù Ø¯Ø³ØªØ±Ø³Û Ø¨Ù ÙØ± ÙÛÚÚ¯ÛâØ§Û ÙØ¬Ùد دارد. اگر Ø¢Ù ÙÛÚÚ¯Û ÙØ¬Ùد ÙØ¯Ø§Ø´ØªÙ باشد ÙÛÚ Ø§Ø±ÙØ±Û Ø¯Ø±ÛØ§Ùت ÙÙ ÛâÚ©ÙÛÙ .
Ø®ÙØ§Ùد٠ÙÛÚÚ¯ÛâØ§Û Ú©Ù ÙØ¬Ùد ÙØ¯Ø§Ø±Ø¯ ÙÙØ· Ù
ÙØ¯Ø§Ø± undefined را برÙ
ÛâÚ¯Ø±Ø¯Ø§ÙØ¯. پس Ù
ا Ù
ÛâØªÙØ§ÙÛÙ
ب٠آساÙÛ Ø¨Ø±Ø±Ø³Û Ú©ÙÛÙ
Ú©Ù ÙÛÚÚ¯Û ÙØ¬Ùد دارد ÛØ§ ÙÙ:
let user = {};
alert( user.noSuchProperty === undefined ); // "ب٠Ù
Ø¹ÙØ§Û اÛ٠است Ú©Ù "ÚÙÛÙ ÙÛÚÚ¯ÛâØ§Û ÙØ¬Ùد ÙØ¯Ø§Ø±Ø¯ true
Ø¨Ø±Ø§Û Ø§ÙØ¬Ø§Ù
اÛ٠کار عÙ
Ùگر Ù
Ø®ØµÙØµ "in" ÙÙ
ÙØ¬Ùد دارد.
سÛÙØªÚ©Ø³ آ٠اÛÙÚ¯ÙÙ٠است:
"key" in object
Ø¨Ø±Ø§Û Ù Ø«Ø§Ù:
let user = { name: "John", age: 30 };
alert( "age" in user ); // true ÙØ¬Ùد دارد پس user.age
alert( "blabla" in user ); // false ÙØ¬Ùد ÙØ¯Ø§Ø±Ø¯ پس user.blabla
ÙØ·Ùا در ÙØ¸Ø± Ø¯Ø§Ø´ØªÙ Ø¨Ø§Ø´ÛØ¯ ک٠در سÙ
ت ÚÙ¾ in Ø¨Ø§ÛØ¯ اسÙ
ÙÛÚÚ¯Û ÙØ¬Ùد داشت٠باشد Ú©Ù Ù
عÙ
ÙÙØ§ ÛÚ© رشت٠درÙÙ Ú©ÙØªÛش٠است.
اگر ٠ا Ú©ÙØªÛش٠را ØØ°Ù Ú©ÙÛÙ Ø Ù Ø§ÙÙØ¯ Ù ØªØºÛØ± ÙØ±Ø¶ Ù ÛâØ´ÙØ¯Ø پس Ø¨Ø§ÛØ¯ Ø§Ø³Ù ÙØ§ÙØ¹Û Ø¨Ø±Ø§Û Ø¨Ø±Ø±Ø³Û Ø§Ø³ØªÙØ§Ø¯Ù Ø´ÙØ¯. Ø¨Ø±Ø§Û Ù Ø«Ø§Ù:
let user = { age: 30 };
let key = "age";
alert( key in user ); // true ÙØ¬Ùد دارد پس "age" ÙÛÚÚ¯Û
ÚØ±Ø§ عÙ
Ùگر in Ø¨Ø§ÛØ¯ ÙØ¬Ùد Ø¯Ø§Ø´ØªÙ Ø¨Ø§Ø´Ø¯Ø Ø¢ÛØ§ اÛÙک٠با undefined Ù
ÙØ§ÛØ³Ù Ø§ÙØ¬Ø§Ù
Ø´ÙØ¯ کاÙÛ ÙÛØ³ØªØ
Ø¨ÛØ´ØªØ± اÙÙØ§Øª Ø§ÙØ¬Ø§Ù
Ù
ÙØ§Ûس٠با undefined Ø¨Ù Ø¯Ø±Ø³ØªÛ Ú©Ø§Ø± Ù
ÛâÚ©ÙØ¯. اÙ
ا Ø¨Ø±Ø§Û ÛÚ© Ù
ÙØ±Ø¯ خاص اÛ٠کار با شکست Ù
ÙØ§Ø¬Ù Ù
ÛâØ´ÙØ¯ ÙÙÛ "in" Ø¨Ù Ø¯Ø±Ø³ØªÛ Ú©Ø§Ø± Ù
ÛâÚ©ÙØ¯.
Ø¢Ù Ù
ÙØ±Ø¯ زÙ
اÙÛ Ø§Ø³Øª Ú©Ù ÛÚ© ÙÛÚÚ¯Û Ø´ÛØ¡ Ù
ÙØ¬Ùد Ø¨Ø§Ø´Ø¯Ø Ø§Ù
ا undefined را در Ø®ÙØ¯ Ø°Ø®ÛØ±Ù کرد٠باشد:
let obj = {
test: undefined
};
alert( obj.test ); // Ø§Ø³ØªØ Ù¾Ø³ ÛØ¹ÙÛ ÚÙÛÙ Ù
ØªØºÛØ±Û ÙØ¯Ø§Ø±ÛÙ
Ø undefined Ø®Ø±ÙØ¬Û
alert( "test" in obj ); // !Ù
ÛâØ¯ÙØ¯Ø Ø¨ÙØ§Ø¨Ø±Ø§ÛÙ ÙÛÚÚ¯Û ÙØ¬Ùد دارد true Ø®Ø±ÙØ¬Û
در کد Ø¨Ø§ÙØ§Ø ÙÛÚÚ¯Û obj.test Ø¨Ù Ø·ÙØ± ÙÙÛ ÙØ¬Ùد دارد. پس عÙ
Ùگر in درست کار Ù
ÛâÚ©ÙØ¯.
Ù
ÙÙØ¹ÛتâÙØ§ÛÛ Ø´Ø¨Û٠ب٠اÛÙ Ø¨Ù ÙØ¯Ø±Øª Ø§ØªÙØ§Ù Ù
ÛâØ§ÙØªÙØ¯Ø ÚÙÙ undefined ÙØ¨Ø§Ûد Ø¨Ù ØµØ±Ø§ØØª Ø¨Ø±Ø§Û Ù
ÙØ¯Ø§Ø±Ø¯ÙÛ Ø§Ø³ØªÙØ§Ø¯Ù Ø´ÙØ¯. Ù
ا Ù
عÙ
ÙÙØ§ از null Ø¨Ø±Ø§Û Ù
ØªØºÛØ±ÙØ§Û âÙØ§Ø´ÙاختÙâ ÛØ§ âØ®Ø§ÙÛâ Ø§Ø³ØªÙاد٠Ù
ÛâÚ©ÙÛÙ
. در ÙØªÛج٠عÙ
Ùگر in در کد Ù
اÙÙØ¯ ÛÚ© ØºØ±ÛØ¨Ù است.
ØÙÙÙâÛ "for..in"
Ø¨Ø±Ø§Û Ú¯Ø±Ø¯Ø´ در بÛ٠تÙ
اÙ
ÙÛÚÚ¯ÛâÙØ§Û ÛÚ© Ø´ÛØ¡Ø Ø´Ú©Ù Ø®Ø§ØµÛ Ø§Ø² ØÙÙÙ ÙØ¬Ùد دارد: for..in. اÛÙ ØÙÙ٠کاÙ
ÙØ§ Ù
ØªÙØ§Ùت از ساختار (;;)for Ú©Ù ÙØ¨Ùا Ø¢Ù
ÙØ®ØªÛÙ
است.
سÛÙØªÚ©Ø³:
for (key in object) {
// بدÙÙ Ø¨Ø±Ø§Û ÙØ± کداÙ
از Ú©ÙÛØ¯ÙØ§Û Ù
ابÛÙ ÙÛÚÚ¯ÛâÙØ§Û Ø´ÛØ¡ اجرا Ù
ÛâØ´ÙØ¯
}
Ø¨Ø±Ø§Û Ù
Ø«Ø§ÙØ Ø¨ÛØ§ÛÛØ¯ تÙ
اÙ
ÙÛÚÚ¯ÛâÙØ§Û user را ÙÙ
Ø§ÛØ´ دÙÛÙ
:
let user = {
name: "John",
age: 30,
isAdmin: true
};
for (let key in user) {
// Ú©ÙÛØ¯Ùا
alert( key ); // name, age, isAdmin
// Ù
ÙØ¯Ø§Ø±ÙØ§Û Ú©ÙÛØ¯Ùا
alert( user[key] ); // John, 30, true
}
در ÙØ¸Ø± Ø¯Ø§Ø´ØªÙ Ø¨Ø§Ø´ÛØ¯ ک٠تÙ
اÙ
Ø³Ø§Ø®ØªØ§Ø±ÙØ§Û âforâ Ø¨Ù Ù
ا اجاز٠تعرÛÙ Ù
ØªØºÛØ± Ø§ÛØ¬Ø§Ø¯Ú©ÙÙØ¯ÙâÛ ØÙÙ٠را داخ٠ØÙÙÙ Ù
ÛâØ¯ÙÙØ¯Ø let key اÛÙØ¬Ø§ ب٠عÙÙØ§Ù Ù
ثا٠صد٠Ù
ÛâÚ©ÙØ¯.
ÙÙ
ÚÙÛÙ Ù
ا Ù
ÛâØªÙØ§ÙستÛÙ
Ø¨Ù Ø¬Ø§Û key از اسÙ
Û Ø¯Ûگر Ø¨Ø±Ø§Û Ù
ØªØºÛØ± Ø§Ø³ØªÙØ§Ø¯Ù Ú©ÙÛÙ
. Ø¨Ø±Ø§Û Ù
Ø«Ø§ÙØ "for (let prop in obj)" ÙÙ
Ø®ÛÙÛ Ø§Ø³ØªÙØ§Ø¯Ù Ù
ÛâØ´ÙØ¯.
٠رتب شد٠٠ث٠ÛÚ© Ø´ÛØ¡
Ø¢ÛØ§ Ø´ÛØ¡Ùا ٠رتب ÙØ³ØªÙØ¯Ø Ø¨Ù Ø¹Ø¨Ø§Ø±ØªÛ Ø¯ÛÚ¯Ø±Ø Ø§Ú¯Ø± ٠ا داخ٠ÛÚ© Ø´ÛØ¡ ØÙÙ٠بزÙÛÙ Ø Ø¢ÛØ§ ت٠ا٠ÙÛÚÚ¯ÛâÙØ§Û آ٠را با ØªØ±ØªÛØ¨Û ک٠اضاÙÙ Ø´Ø¯ÙØ¯ Ø¯Ø±ÛØ§Ùت Ù ÛâÚ©ÙÛÙ Ø Ø¢ÛØ§ Ù ÛâØªÙØ§ÙÛ٠ب٠اÛÙ Ù ÙØ¶Ùع اتکا Ú©ÙÛÙ Ø
Ø¬ÙØ§Ø¨ Ú©ÙØªØ§Ù اÛ٠است: â٠رتب Ø´Ø¯Ù Ø¨Ù Ø·ÙØ±Û خاصâ: ÙÛÚÚ¯ÛâÙØ§ÛÛ Ú©Ù Ø¹Ø¯Ø¯ صØÛØ ÙØ³ØªÙد ٠رتب شدÙâØ§ÙØ¯Ø بÙÛÙâÛ Ø¢ÙÙØ§ Ø¨Ù ØªØ±ØªÛØ¨Û ک٠ساخت٠٠ÛâØ´ÙÙØ¯ ÙØ³ØªÙد. در Ø§Ø¯Ø§Ù Ù Ø¨Ù Ø¬Ø²Ø¦ÛØ§Øª Ù ÛâپردازÛÙ .
ب٠عÙÙØ§Ù Ù Ø«Ø§ÙØ Ø¨ÛØ§ÛÛØ¯ ÛÚ© Ø´ÛØ¡ ØØ§ÙÛ Ú©Ø¯ÙØ§Û تÙÙ٠را ÙØ±Ø¶ Ú©ÙÛÙ :
let codes = {
"49": "Germany",
"41": "Switzerland",
"44": "Great Britain",
// ..,
"1": "USA"
};
for (let code in codes) {
alert(code); // 1, 41, 44, 49
}
اÛÙ Ø´ÛØ¡ Ù
Ù
ک٠است Ø¨Ø±Ø§Û Ù¾ÛØ´ÙÙØ§Ø¯ داد٠ÙÛØ³ØªÛ از گزÛÙÙâÙØ§ ب٠کاربر Ø§Ø³ØªÙØ§Ø¯Ù Ø´ÙØ¯. اگر Ù
ا در ØØ§Ù ساخت Ø³Ø§ÛØªÛ Ú©Ù Ø¨Ù Ø·ÙØ± عÙ
Ø¯Ù Ø¨Ø±Ø§Û Ø¢ÙÙ
اÙÛâÙØ§ است باشÛÙ
پس Ø§ØØªÙ
Ø§ÙØ§ Ù
ÛâØ®ÙØ§ÙÛÙ
Ú©Ù 49 اÙÙÛ٠گزÛÙ٠باشد.
ا٠ا اگر ٠ا کد را اجرا Ú©ÙÛÙ Ø ÙØªÛجÙâØ§Û Ú©Ø§Ù ÙØ§ Ù ØªÙØ§Ùت Ù ÛâØ¨ÛÙÛÙ :
- USA (1) اÙÙÛÙ Ø®ÙØ§Ùد Ø¨ÙØ¯.
- سپس Switzerland (41) Ù ÙÙ ÛÙØ·Ùر Ø§Ø¯Ø§Ù Ù Ù¾ÛØ¯Ø§ Ù ÛâÚ©ÙØ¯.
Ú©Ø¯ÙØ§Û تÙÙ٠با ØªØ±ØªÛØ¨ ØµØ¹ÙØ¯Û Ù
رتب Ù
ÛâØ´ÙÙØ¯Ø ÚÙ٠آÙÙØ§ اعداد صØÛØ ÙØ³ØªÙد. پس Ù
ا 49 Ø44 Ø41 Ø1 را Ø®ÙØ§ÙÛÙ
Ø¯ÛØ¯.
عبارت âÙÛÚÚ¯Û Ø¹Ø¯Ø¯ صØÛØâ در اÛÙØ¬Ø§ ب٠٠عÙÛ Ø±Ø´ØªÙâØ§Û Ø§Ø³Øª Ú©Ù Ù ÛâØªÙØ§Ùد بدÙ٠تغÛÛØ±Ø ب٠عدد صØÛØ ØªØ¨Ø¯ÛÙ Ø´ÙØ¯ ٠برعکس.
Ø¨ÙØ§Ø¨Ø±Ø§ÛÙ â49â ÛÚ© اس٠٠ÙÛÚÚ¯Û Ø§Ø² ÙÙØ¹ عدد صØÛØ Ø§Ø³ØªØ ÚÙ٠ز٠اÙÛ Ú©Ù Ø¨Ù ÛÚ© عدد صØÛØ ØªØ¨Ø¯ÛÙ Ù ÛâØ´ÙØ¯ Ù Ø¨Ø±Ø¹Ú©Ø³Ø ÙÙÙØ² Ûکسا٠است. ا٠ا â49+â Ù â1.2â Ø§ÛÙØ·Ùر ÙÛØ³ØªÙد:
// Ø¨Ù Ø·ÙØ± ÙØ§Ø¶Ø ب٠ÛÚ© عدد تبدÛÙ Ù
ÛâÚ©ÙØ¯ Number(...)
// ÛÚ© تابع است ک٠درÙÙ Ø²Ø¨Ø§Ù Ø³Ø§Ø®ØªÙ Ø´Ø¯Ù Ù ÙØ³Ù
ت Ø§Ø¹Ø´Ø§Ø±Û Ø±Ø§ ØØ°Ù Ù
ÛâÚ©ÙØ¯ Math.trunc
alert( String(Math.trunc(Number("49"))) ); // "49", ÛÚ©Ø³Ø§Ù Ø§Ø³ØªØ Ù¾Ø³ ÙÛÚÚ¯ÛâØ§Û ØµØÛØ Ø§Ø³Øª
alert( String(Math.trunc(Number("+49"))) ); // "49", با "49+" Ù
شاب٠ÙÛØ³ØªØ پس ÙÛÚÚ¯ÛâØ§Û ØµØÛØ ÙÙ
ÙÛØ³Øª
alert( String(Math.trunc(Number("1.2"))) ); // "1", با "1.2" Ù
شاب٠ÙÛØ³ØªØ پس ÙÛÚÚ¯ÛâØ§Û ØµØÛØ ÙÙ
ÙÛØ³Øª
â¦Ø§Ø² سÙÛÛ Ø¯ÛÚ¯Ø±Ø Ø§Ú¯Ø± Ú©ÙÛØ¯Ùا عدد صØÛØ ÙØ¨Ø§Ø´ÙØ¯Ø Ø¨Ù ØªØ±ØªÛØ¨ ساخت٠شد٠٠رتب Ù ÛâØ´ÙÙØ¯Ø Ø¨Ø±Ø§Û Ù Ø«Ø§Ù:
let user = {
name: "John",
surname: "Smith"
};
user.age = 25; // ÛÚ© ÙÛÚÚ¯Û Ø¯Ûگر اضاÙÙ Ù
ÛâÚ©ÙÛÙ
// ÙÛÚÚ¯ÛâÙØ§Û ØºÛØ± صØÛØ Ø¨Ø§ ØªØ±ØªÛØ¨ ساخت٠شد٠Ù
رتب Ù
ÛâØ´ÙÙØ¯
for (let prop in user) {
alert( prop ); // name, surname, age
}
Ø¨ÙØ§Ø¨Ø±Ø§ÛÙØ Ø¨Ø±Ø§Û ØÙ Ù
Ø´Ú©Ù Ú©Ø¯ÙØ§Û تÙÙÙØ Ù
ا Ù
ÛâØªÙØ§ÙÛÙ
با ساخت Ú©Ø¯ÙØ§Û ØºÛØ± صØÛØ âØªÙÙØ¨ Ú©ÙÛÙ
â. اضاÙÙ Ú©Ø±Ø¯Ù Ø¹ÙØ§Ù
ت Ù
ثبت "+" ÙØ¨Ù از ÙØ± کد کاÙÛ Ø§Ø³Øª.
٠ث٠اÛÙ:
let codes = {
"+49": "Germany",
"+41": "Switzerland",
"+44": "Great Britain",
// ..,
"+1": "USA"
};
for (let code in codes) {
alert( +code ); // 49, 41, 44, 1
}
ØØ§Ùا اÛ٠کد ÙÙ Ø§ÙØ·Ùر Ú©Ù Ø§ÙØªØ¸Ø§Ø± Ù ÛâØ±ÙØª کار Ù ÛâÚ©ÙØ¯.
Ø®ÙØ§ØµÙ
Ø´ÛØ¡Ùا آراÛÙâÙØ§ÛÛ Ø´Ø±Ú©ØªâÙ¾Ø°ÛØ± با ÚÙØ¯ Ø®ØµÙØµÛت خاص ÙØ³ØªÙد.
Ø¢ÙÙØ§ ÙÛÚÚ¯ÛâÙØ§ (Ø¬ÙØªâÙØ§Û Ú©ÙÛØ¯-Ù ÙØ¯Ø§Ø±) را Ø°Ø®ÛØ±Ù Ù ÛâÚ©ÙÙØ¯ Ú©Ù:
- Ú©ÙÛØ¯ÙØ§Û ÙÛÚÚ¯ÛâÙØ§ Ø¨Ø§ÛØ¯ Ø±Ø´ØªÙ ÛØ§ symbol Ø¨Ø§Ø´ÙØ¯ (٠ع٠ÙÙØ§ رشتÙ).
- Ù ÙØ¯Ø§Ø±Ùا Ù ÛâØªÙØ§ÙÙØ¯ از ÙØ± ÙÙØ¹Û Ø¨Ø§Ø´ÙØ¯.
Ø¨Ø±Ø§Û Ø¯Ø³ØªØ±Ø³Û Ø¯Ø§Ø´ØªÙ Ø¨Ù ÛÚ© ÙÛÚÚ¯ÛØ ٠ا Ù ÛâØªÙØ§ÙÛ٠از اÛÙ Ø±ÙØ´âÙØ§ Ø§Ø³ØªÙØ§Ø¯Ù Ú©ÙÛÙ :
- ÙÙØ·Ù:
obj.property. - براکت
obj["property"]. براکتâÙØ§ ب٠٠ا اجاز٠٠ÛâØ¯ÙÙØ¯ Ú©Ù key را از ÛÚ© Ù ØªØºÛØ± Ø¨Ú¯ÛØ±ÛÙ Ø Ù Ø«ÙØ§:obj[varWithKey].
ع٠ÙÚ¯Ø±ÙØ§Û اضاÙÛ:
- Ø¨Ø±Ø§Û ØØ°Ù ÛÚ© ÙÛÚÚ¯Û:
delete obj.prop. - Ø¨Ø±Ø§Û Ø¨Ø±Ø±Ø³Û Ù
ÙØ¬ÙØ¯ÛØª ÙÛÚÚ¯Û Ø¨Ø§ اسÙ
داد٠شدÙ:
"key" in obj. - Ø¨Ø±Ø§Û ØÙÙ٠زد٠درÙÙ ÛÚ© Ø´ÛØ¡: ØÙÙÙâÛ
for (let key in obj).
ÚÛØ²Û Ú©Ù Ù
ا در اÛÙ ÙØµÙ Ø¢Ù
ÙØ®ØªÛÙ
âØ´ÛØ¡ سادÙâ ÛØ§ ÙÙØ· Ø´ÛØ¡ ÙØ§Ù
ÛØ¯Ù Ù
ÛâØ´ÙØ¯.
در Ø¬Ø§ÙØ§Ø§Ø³Ú©Ø±Ûپت Ø´ÛØ¡ÙØ§Û Ø¨Ø³ÛØ§Ø± Ú¯ÙÙØ§Ú¯Ù٠دÛÚ¯Ø±Û ÙØ¬Ùد Ø¯Ø§Ø±ÙØ¯:
ArrayØ¨Ø±Ø§Û Ø°Ø®ÛØ±Ù Ú©Ø±Ø¯Ù Ù Ø¬Ù ÙØ¹ÙâØ§Û Ø§Ø² Ø¯Ø§Ø¯Ù Ø¨Ù ØµÙØ±Øª ٠رتبØDateØ¨Ø±Ø§Û Ø°Ø®ÛØ±Ù Ú©Ø±Ø¯Ù Ø§Ø·ÙØ§Ø¹Ø§ØªÛ Ø¯Ø±Ø¨Ø§Ø±Ù ØªØ§Ø±ÛØ® Ù Ø²Ù Ø§ÙØErrorØ¨Ø±Ø§Û Ø°Ø®ÛØ±Ù Ú©Ø±Ø¯Ù Ø§Ø·ÙØ§Ø¹Ø§Øª دربارÙâÛ ÛÚ© Ø§Ø±ÙØ±.- â¦Ù ØºÛØ±Ù.
ÙØ± کدا٠از Ø¢ÙÙØ§ Ø®ØµÙØµÛات خاص Ø®ÙØ¯ را Ø¯Ø§Ø±ÙØ¯ ک٠بعدا Ø¢ÙÙØ§ را Ù ÛâØ¢Ù ÙØ²ÛÙ . Ø¨Ø¹Ø¶Û Ø§ÙÙØ§Øª Ø§ÙØ±Ø§Ø¯ ÚÛØ²ÙاÛÛ Ù Ø§ÙÙØ¯ âÙÙØ¹ Arrayâ ÛØ§ âÙÙØ¹ Dateâ Ø±Ø§ ب٠زبا٠٠ÛâØ¢ÙØ±ÙØ¯Ø Ø§Ù Ø§ Ø¨Ù Ø·ÙØ± Ø±Ø³Ù Û Ø¢ÙÙØ§ ÛÚ© ÙÙØ¹ خاص ÙÛØ³ØªÙØ¯Ø Ø¨Ùک٠ب٠ÛÚ© ÙÙØ¹ «object» تعÙÙ Ø¯Ø§Ø±ÙØ¯ ٠آ٠را Ø¨Ù Ø±ÙØ´âÙØ§Û ٠ختÙ٠گسترش Ù ÛâØ¯ÙÙØ¯.
Ø´ÛØ¡Ùا در Ø¬Ø§ÙØ§Ø§Ø³Ú©Ø±Ûپت Ø¨Ø³ÛØ§Ø± ÙØ¯Ø±ØªÙ ÙØ¯ ÙØ³ØªÙد. اÛÙØ¬Ø§ ٠ا ÙÙØ· Ù ÙØ¯Ø§Ø± Ú©Ù Û Ø§Ø² Ù Ø¨ØØ«Û Ú©Ù Ø¨Ø³ÛØ§Ø± بزرگ است را ÛØ§Ø¯ Ú¯Ø±ÙØªÛÙ . ٠ا Ø®ÛÙÛ Ø¨Ø§ Ø´ÛØ¡Ùا کار Ø®ÙØ§ÙÛ٠کرد Ù ÚÛØ²ÙØ§Û Ø¬Ø¯ÛØ¯Û را دربار٠آÙÙØ§ در بخشâÙØ§Û Ø¨Ø¹Ø¯Û Ø§ÛÙ Ø¢Ù ÙØ²Ø´ ÛØ§Ø¯ Ø®ÙØ§ÙÛÙ Ú¯Ø±ÙØª.
ÙØ¸Ø±Ø§Øª
<code>Ø§Ø³ØªÙØ§Ø¯Ù Ú©ÙÛØ¯Ø Ø¨Ø±Ø§Û ÚÙØ¯Û٠خط â کد را درÙ٠تگ<pre>ÙØ±Ø§Ø± دÙÛØ¯Ø Ø¨Ø±Ø§Û Ø¨ÛØ´ از د٠خط کد â Ø§Ø² ÛÚ© جعبÙÙ Ø´ÙÛ Ø§Ø³ØªÙØ§Ø¯Ù Ú©ÙÛØ¯. (plnkrØ jsbinØ codepenâ¦)