Repository: Mariotek/better-understanding-of-javascript
Branch: master
Commit: 385091e9449b
Files: 273
Total size: 8.6 MB
Directory structure:
gitextract_qqrkz3gm/
├── APK/
│ └── BetterUnderstandingOfJavascript.apk
├── CNAME
├── HTML/
│ ├── 1.html
│ ├── 10.html
│ ├── 100.html
│ ├── 101.html
│ ├── 102.html
│ ├── 103.html
│ ├── 104.html
│ ├── 105.html
│ ├── 106.html
│ ├── 107.html
│ ├── 108.html
│ ├── 109.html
│ ├── 11.html
│ ├── 110.html
│ ├── 111.html
│ ├── 112.html
│ ├── 113.html
│ ├── 114.html
│ ├── 115.html
│ ├── 116.html
│ ├── 117.html
│ ├── 118.html
│ ├── 119.html
│ ├── 12.html
│ ├── 120.html
│ ├── 121.html
│ ├── 122.html
│ ├── 123.html
│ ├── 124.html
│ ├── 125.html
│ ├── 126.html
│ ├── 127.html
│ ├── 128.html
│ ├── 129.html
│ ├── 13.html
│ ├── 130.html
│ ├── 131.html
│ ├── 132.html
│ ├── 133.html
│ ├── 134.html
│ ├── 135.html
│ ├── 136.html
│ ├── 137.html
│ ├── 138.html
│ ├── 139.html
│ ├── 14.html
│ ├── 140.html
│ ├── 141.html
│ ├── 142.html
│ ├── 143.html
│ ├── 144.html
│ ├── 145.html
│ ├── 146.html
│ ├── 147.html
│ ├── 148.html
│ ├── 149.html
│ ├── 15.html
│ ├── 150.html
│ ├── 151.html
│ ├── 152.html
│ ├── 153.html
│ ├── 154.html
│ ├── 155.html
│ ├── 156.html
│ ├── 157.html
│ ├── 158.html
│ ├── 159.html
│ ├── 16.html
│ ├── 160.html
│ ├── 161.html
│ ├── 162.html
│ ├── 163.html
│ ├── 164.html
│ ├── 165.html
│ ├── 166.html
│ ├── 167.html
│ ├── 168.html
│ ├── 169.html
│ ├── 17.html
│ ├── 170.html
│ ├── 171.html
│ ├── 172.html
│ ├── 173.html
│ ├── 174.html
│ ├── 175.html
│ ├── 176.html
│ ├── 177.html
│ ├── 178.html
│ ├── 179.html
│ ├── 18.html
│ ├── 180.html
│ ├── 181.html
│ ├── 182.html
│ ├── 183.html
│ ├── 184.html
│ ├── 185.html
│ ├── 186.html
│ ├── 187.html
│ ├── 188.html
│ ├── 189.html
│ ├── 19.html
│ ├── 190.html
│ ├── 191.html
│ ├── 192.html
│ ├── 193.html
│ ├── 194.html
│ ├── 195.html
│ ├── 196.html
│ ├── 197.html
│ ├── 198.html
│ ├── 199.html
│ ├── 2.html
│ ├── 20.html
│ ├── 200.html
│ ├── 201.html
│ ├── 202.html
│ ├── 203.html
│ ├── 204.html
│ ├── 205.html
│ ├── 206.html
│ ├── 207.html
│ ├── 208.html
│ ├── 209.html
│ ├── 21.html
│ ├── 210.html
│ ├── 211.html
│ ├── 212.html
│ ├── 213.html
│ ├── 214.html
│ ├── 215.html
│ ├── 216.html
│ ├── 217.html
│ ├── 218.html
│ ├── 219.html
│ ├── 22.html
│ ├── 220.html
│ ├── 221.html
│ ├── 222.html
│ ├── 223.html
│ ├── 224.html
│ ├── 225.html
│ ├── 226.html
│ ├── 227.html
│ ├── 228.html
│ ├── 229.html
│ ├── 23.html
│ ├── 230.html
│ ├── 231.html
│ ├── 232.html
│ ├── 233.html
│ ├── 234.html
│ ├── 235.html
│ ├── 236.html
│ ├── 237.html
│ ├── 238.html
│ ├── 239.html
│ ├── 24.html
│ ├── 240.html
│ ├── 241.html
│ ├── 242.html
│ ├── 243.html
│ ├── 244.html
│ ├── 245.html
│ ├── 246.html
│ ├── 247.html
│ ├── 248.html
│ ├── 249.html
│ ├── 25.html
│ ├── 250.html
│ ├── 251.html
│ ├── 26.html
│ ├── 27.html
│ ├── 28.html
│ ├── 29.html
│ ├── 3.html
│ ├── 30.html
│ ├── 31.html
│ ├── 32.html
│ ├── 33.html
│ ├── 34.html
│ ├── 35.html
│ ├── 36.html
│ ├── 37.html
│ ├── 38.html
│ ├── 39.html
│ ├── 4.html
│ ├── 40.html
│ ├── 41.html
│ ├── 42.html
│ ├── 43.html
│ ├── 44.html
│ ├── 45.html
│ ├── 46.html
│ ├── 47.html
│ ├── 48.html
│ ├── 49.html
│ ├── 5.html
│ ├── 50.html
│ ├── 51.html
│ ├── 52.html
│ ├── 53.html
│ ├── 54.html
│ ├── 55.html
│ ├── 56.html
│ ├── 57.html
│ ├── 58.html
│ ├── 59.html
│ ├── 6.html
│ ├── 60.html
│ ├── 61.html
│ ├── 62.html
│ ├── 63.html
│ ├── 64.html
│ ├── 65.html
│ ├── 66.html
│ ├── 67.html
│ ├── 68.html
│ ├── 69.html
│ ├── 7.html
│ ├── 70.html
│ ├── 71.html
│ ├── 72.html
│ ├── 73.html
│ ├── 74.html
│ ├── 75.html
│ ├── 76.html
│ ├── 77.html
│ ├── 78.html
│ ├── 79.html
│ ├── 8.html
│ ├── 80.html
│ ├── 81.html
│ ├── 82.html
│ ├── 83.html
│ ├── 84.html
│ ├── 85.html
│ ├── 86.html
│ ├── 87.html
│ ├── 88.html
│ ├── 89.html
│ ├── 9.html
│ ├── 90.html
│ ├── 91.html
│ ├── 92.html
│ ├── 93.html
│ ├── 94.html
│ ├── 95.html
│ ├── 96.html
│ ├── 97.html
│ ├── 98.html
│ ├── 99.html
│ ├── annotations.json
│ ├── assets/
│ │ ├── idrviewer.annotations.js
│ │ ├── idrviewer.css
│ │ ├── idrviewer.fullscreen.js
│ │ ├── idrviewer.js
│ │ ├── idrviewer.querystring-navigation.js
│ │ └── idrviewer.search.js
│ ├── browserconfig.xml
│ ├── config.js
│ ├── humans.txt
│ ├── index.html
│ ├── manifest.json
│ ├── robots.txt
│ ├── search.json
│ ├── sw.js
│ ├── workbox-46415db6.js
│ └── workbox-cae64c9a.js
├── LICENSE
├── README.md
└── workbox-config.js
================================================
FILE CONTENTS
================================================
================================================
FILE: CNAME
================================================
js.basic.sayjeyhi.com
================================================
FILE: HTML/1.html
================================================
37
...........................................................................................
object
¶É
ا¾ سا
ÈÆÀ
ر
38
.......................................................................................
object
ا در
È
ژگی
±À ¶±²±¹
م
38
.......................................................................................
ا
È
ژگی
±À Á
سی ب
²¸
دس
39
......................................................................................
ا
È
ژگی
±À ²±
مقاد
²½½
تغ
39
...........................................................................................
¹±¹
ژگی ج
±À
اد
ر´
40
....................................................................................
object
ژگی ´ز
±À Ù
حذ
40
.............................................................................
object
ا¾
È
ژگی
±À ¾¹Ñ
ب
²Í½
پ
41
...........................................................................................
)Arrays
(
ا
ÈÁ±´
آر
43
........................................................................................
)
Functions
( Ú
تو´ب
44
.....................................................................................................
ا
È Û´²¸½
ل
45
....................................................................
د´ده
Ö´
و
º´ ¾´²
ه ب
¹
ش
³±²
ا¾ تع
ȹ¸
م
46
..............................................................................................
²±
مقاد
Á˱
مقا
46
..........................................................................................
)Equality
( ¾²
´ب
²
ب
49
.....................................................................................
)Inequality
( ¾²
´ب
²
اب
º
م
±
بخش س
[
¸ا و حلقه ¸ا
µ
ود
¹º
شرط´، م
»²¼
½با
52
.........................................................................
)Conditionals
(
ی
ܲ
ش
Ê´
ار
Ç¿
53
.......................................................................................
طی
É
ن
À
ا¾ در
Èݲ
ش
54
..........................................................................................
)Scope
(
ده
À¹Õ
م
55
.........................................................................................
ا¾ تودرتو
È
ده
À¹Õ
م
58
...........................................................................................
)
Loops
(
ا
ÈÁ
ق
Ð
ح
58
.................................................................................
do-while
À
while
Á
ق
Ð
ح
59
.....................................................................................................
for
Á
ق
Ð
ح
================================================
FILE: HTML/100.html
================================================
رم
²
بخش چه
[
و ساخ¿ا¼ د¼و·´ آ¾¸ا
À³²¶Á
64
.........................................................................................
)
Functions
( Ú
تو´ب
66
..........................................................................
)Anonymous
( Þ
ا
Ñ
اش
º Ú
تو´ب
66
...........................................................................
²Î±
تابعی د
Á
ب
Ú
د´دن تاب
Þ
پا
69
...........................................................................................
Ú
تو´ب
prototype
73
...............................................................
¿اد¾
À
prototype
¾À
ا¾ ر
ȹ¸
م
ÊÀ
تفا
74
.........................................................................................
ه
¹º
ساز
Ú
ه تو´ب
²½Øº
ز
75
......................................................................................
prototype
ʰÍÏ
م
77
.....................................................................................
call
با ´س¸فاده ´ز
Ú
´¾ تو´ب
²
´ج
³
بخش پنج
[
object
یه و
²¼
رف¿ه آ
ÂÃ
مباحث پ
82
............................................................................................
ا
È Á±´
ا¾ آر
ȹ¸
م
90
.................................................................................
)array-like
(
ا
ÈÁ±´
آر
ÁÇ
ش
91
..................................................................................................
籫
¶ آر
É
سا
92
....................................................................................
Array
با
籫
¶ آر
É
سا
ʰÍÏ
م
95
...................................................................................
ا
È
object
د¾
²
کارب
Ú
تو´ب
99
............................................................................................
object
¾²
´رث ب
99
.......................................................
)
method chaining(
ا
ȹ¸
¾ م
²½Øº
ی ز
º´
و
É´²·
104
..............................................................................
reduce
´ز
Á¸·²Ï½
´س¸فاده پ
106
.......................................................
)
Higher order functions( ²
ت
ß
با
ÁÇ
ت
²
م
Ú
تو´ب
================================================
FILE: HTML/110.html
================================================
ا
± Ä
´ بخ
°
ر با
³
use strict
´ حا¼´ م¾¿
»¶¾
¶ کد رش
¹¸ Ú±
ن
³»³
ر
»²
با ق
strict
µ
الساز´ حال
ÕÓ
.³²±
ذ
Å·
م
Ö
ا
ßÁ» ،Ù±
ر
»³ ²æÁ
´ ک¶ مد
»
scope
“use strict”
;
// your codes in strict mode goes here
.µ
ش
»³
هد
»
خو
Á
آن
³²¹ÂÈ
ع
Ï
و
ÞÁ ¼
hoisting
ر
³ ´²
ی
â
¸ا
strict
µ
ز حال
» ϳ
¾فا
º» ¶
ید ک
É
¸وج¶ ک
[
strict
Ü
ی
²
شر
Å
ا
ǽ² ÝÌ
س
³
¼جو
²æÁ ³
مور
Û
¸اب
ϳ¼
د
Þ
م
Æ
ا ک
± Ʊ
ا
Ó Æ
´ ک
»²
الساز´ آن ب
ÕÓ
ر
³ ·
م
»×
ل
»
strict
µ
´ حال
»²
ب
´»²
ب
»
ر
Û
¸اب
Ú±
ز
» ·Ð
ا ح¾· بخ
± ،Ï
وش¾¶ شد
Á ´
ز کدها
» ·Ð
´ بخ
»²
ن ب
»
ح¾· م·¸و
»
¼ ب¶ ر
³
ر
»
د
Á
هد
»
و
à ·
اب
±
رز
» »
ید´ کد ر
Â
ک
ÏÜ»¼ ¿±» Ò
ر
³ ÆÞ
م
í
ا
º»²
ام¶ ب
Á²
ب
ì
پ
º
.³²
ک
³¼
د
Þ
م
µ
¿ حال
±» Ñ
ا
È
ع
»
.³²
ک
function
foo
() {
“use strict”
;
// this code is strict mode
function
bar
() {
// this code is strict mode
}
}
{
“use strict”
;
// this code is strict mode
}
// this code is not strict mode
²±
ز
Ñ
ب¶ مثا
°
د ¼ل· حا
Á
· م·شو
º
ر
²
ب
strict
ب¶ صورت
foo
Û
¸اب
ÆÃ»³ ´
کدها
óÝÓ °
با
Ñ
ر مثا
³
.µº» Ï
¾¶ شد
Ó²
گ
²æÁ
ر
³ Ï
وش¾¶ شد
Á
کد
Æ
´ ک
»²
ب
strict
ó±»²
ش
Ñ
ا
È
ع
» ¶
ید ک
É
¸وج¶ ک
116
strict
ÇȲ
و ح
hoisting
================================================
FILE: HTML/119.html
================================================
³´µ
بخش
[
strict
ت
Ä
و حا
hoisting
110
....................................................................................
)Hoisting( ¼¸
´ش
²·´²
ب
112
......................................................................................................
hoisting
¶±
لو
À´
115
.............................................................................
)Áº´²½
سخ¶ گ
(
strict
حال¶
116
...............................................................................
strict
à±´²
ش
Û
ا
»¿´ á
سط
117
.............................................................................
strict
حال¶
Û
و
»Ï
½¼ م
º´
و
Ò
118
..........................................................................
ه
¹Ïº ³±²
تع
²½
´س¸فاده ´ز م¸غ
118
..................................................................................
Ú
ا تاب
± ²½
دن م¸غ
²
ک
Ù
حذ
118
.........................................................................
Ä
ا
º ÂÈ ¾
د
À
ر
À ²¸
´س¸فاده ´ز پار´م
119
............................................................
ی
º¹º´
و
É à
·ق
property
Ó±
وش¸¼ د´ده در
º
120
....................................................................................
Û
ک¸ا
ُ ´ ¾
ا
Ȳ½
م¸غ
³±²
تع
120
...........................................................
ا·¶
±
اب× در
Ò à
·ق
property
Ó±
وش¸¼ در
º
121
..........................................................................
¾¹½Ð
ک
Ê
ا
»Ð
ی ک
ɲ
´س¸فاده ´ز ب
121
.....................................................................
²½
م¸غ
³±²
´¾ تع
²
ب
eval
´س¸فاده ´ز
³
بخش ¶فت
[
¸ا
Å
¸ا و ماژو
closure، IIFE
124
..........................................................
)IIFEs
(
ه
¹
´ زده ش
¹
ص
ÁÐ
·اص
°
ب
Ú
تو´ب
Ê´
ار
Ç¿
125
........................................................................................
IIFE
Ê´
ار
Ç¿
¸ار
É
سا
128
.................................................................
IIFE
¾´²
ب
â
ا
É ¾
ا
Ȳ¸
´س¸فاده ´ز کار´ک
129
...............................................................................
IIFE
Ê´
ار
Ç¿ Ú
گذ´ر¾ تو´ب
Ä
ا
º
130
...........................................................................
IIFE
با
Þ
ساز¾ سور
ÂØ
ح
Â
ک
131
......................................................................................
²
رگ
À²
م
²½ã ¾
ا
Èà½Õ
م
133
.................................................................................................
ا
È
Closure
================================================
FILE: HTML/120.html
================================================
136
......................................................................................
)modules
(
ا
ÈÛÀä
ما
138
.........................................................................................
private
Ú
تو´ب
Ô
در
139
....................................................................................
ÛÀä
ما
publicAPI
Ô
در
140
.....................................................................
publicAPI
¾´²
ب
return
ا¾
ÈÓÇ
س
142
...............................................................................
ÛÀä
ما
²±
ا¾ د´ر´¾ ز
ÈÛÀä
ما
144
............................................................................
ه
¹º
ا¾ ساز
ÈÛÀä
م¶ ما
²· Ö´
و
º´
144
...................................................
)Asynchronous Module Definition )AMD
145
..............................................................................................
CommonJS
145
......................................................................
Universal Module Definition
146
......................................................................................
ES6
در
ÛÀä
م¶ ما
²·
148
.................................................................................
ÛÀä
ا¾ ما
È
ه
¹ÑÑ
¶ ک
±²±¹
م
148
...................................................
¹È
مید
Ä
ا
غ´ ÛÀä
ه ما
¹ÑÑ
¶ ک
±²±¹
م
Ó± Á
´مور¾ ک
148
.................................................................
ÛÀä
ا¾ ما
È
ه
¹ÑÑ
¶ ک
±²±¹
¼ م
±²
ت
ÙÀ²
مع
149
.............................................................................................
ÛÀä
ما
bundler
³
بخش ¶´ت
[
µ
د
²
یریت د
¹
و م
Æ
ساز
µ
ر
Ã
ذخ
152
......................................................................................
´ر در کوکی
¹
ه مق
²½Éå
152
..................................................................................
ا
È
کوکی
²±
¶ مقاد
±²±¹
م
153
..................................................................................................
کوکی
Ù
حذ
153
.............................................................................................
ا
È
½¶ کوکی
Ñ
´م
154
.................................................................
)
Web storage API( ÃÀ Á
حا·ظ
à
ر´ب
154
................................................
کوکی
À localStorage ، sessionStorage ÊÀ
تفا
155
...........................................................................
)
localStorage
(
ی
ÐÕ
م
Á
حا·ظ
156
....................................................................
)
sessionStorage(
ی
ÐÕ
¶ م
ËϺ
156
.........................................................................................................
Blob
================================================
FILE: HTML/130.html
================================================
هد.
³ Ʊ
و
Þ¸
ب¶ ما
»
یاز ر
Á ³
مور
Û
¸ا ¸اب
³²
ی
Ì
می
lang
´³¼
¼ر
Ú± ¼ ³
ر
»³
یس· ¸ولید
ÂÌÁ» ¼ ·º
ار
Ó ´
´ زبانها
»²
ب
Ù
ج
²¾
¼ م
³ "fa"، "en" ²±³
ا
Ý
¿ م¾د با م
±» ·Á»
و
û²Ó
با
ها´
Ä
¶ بخ
È
ج
²¸ ´»²
ز آنها ب
» ¼ ¶¾
خ
±
ر
Ù
ج
²¾
م
²
ه
Ë
و
à
ها´ مخ
²
ر م¾÷ی
³ »
آنها ر
ì
پ
º ،Ù
ی
É
م·ک
:Ï
شد
ϳ»³ ð
. کد ¸وضی
Ù
ی
É
م·ک
ϳ
¾فا
º» ²æÁ ³
مور
// Languages string data object
var
languagesData = {
“en”
: {
“hi”
:
“Hello”
},
“fa”
: {
“hi”
:
“
”
},
};
// function that we use to create translator
function
createTranslator
(
lang
) {
function
translator
(
key
) {
return
languagesData[lang][key];
}
return
translator;
}
ê±²Õ¸ ´
´ زبانها
»²
ب
Ë
ا
à ´
ها
Ù
ج
²¾
¸ا م
µ
وش
Á
ن
»
م·¸و
»
ر
²±
ی× کد ز
Á Û
¿ ¸اب
±»
ز
» ϳ
¾فا
º» ´»²
ب
هد:
³ ¶Ç»
ر
» »
ر
Ï
شد
var
persianTranslator = createTranslator(
“fa”
);
var
englishTranslator = createTranslator(
“en”
);
persianTranslator(
“hi”
);
//
englishTranslator(
“hi”
);
// Hello
»
¶ ر
È
ج
²¸ ´»²
ب
²æÁ ³
مور
Û
¸اب
Ù±
ر
»³ ı
ا
ÈÁ ´»²
· ب
ɾ
· ک¶ م
±
جا
²
ه
Ù
ی
Á»
ام¶ م·¸و
Á²
¿ ب
±» ¶
م
»³»
ر
³
.Ù
ی
É
ک
ϳ
¾فا
º» ¶Á
د زبا
É
ام¶ چ
Á²
ب
Ú±
ز
» ¼ Ù
ی
Á×
ب
»
صد
م
°
س
¹°
س
134
²º
ژول
²
و م
²º
closure ، IIFE
================================================
FILE: HTML/137.html
================================================
157
......................................................................................
Þ
آدر
Á
ب
blob
×±¹Ç
ت
157
..........................................................................................................
blob
ا¾
ȹ¸
م
³
بخش ·ه
[
Transpile
و
Polyfill ،
ت
±
اسکری
ÇȲ Æ
ه¸ا
ÉÊ·
159
...................................................................................
¶Ì±²Í
اس
»
ا¾ ´ک
ÈÁ
خ
˺
160
.................................................................................................
¶؟
˽
چ
ES
161
................................................................................
ا
»
ار ´ک
µ
تا چ
Ó± ¾
ا
ÈÁ
خ
˺
161
..................................................................................................
ES5 Á
خ
˺
161
.....................................................................................
ES2015
ا
± ES6 Á
خ
˺
161
.................................................
)
ES2018 , ES2017 , ES2016(
9 , 8 , 7 ¾
ا
ÈÁ
خ
˺
162
............................................................................................
ES.Next Á
خ
˺
162
.............................................................................................
ES6 ¾
ا
È
ژگی
±À
162
........................................................................................
Classes
ا
ÈÞ°
ک
164
.......................................................................................
Arrow Functions
166
....................................................................
)
template literals(
ا
È Á¸
رش
æ
ال
Ò
167
......................................................................
Object
À Á±´
´¾ آر
²
ب
Destructing
167
..............................................................................................
spread
²Îл¿
168
.................................................................................
Set
À Map ¾
ا
ÈÁ¿
و
ȯ
م
169
.............................................................................................
Polyfill Ä
و
µ
مف
170
.........................................................................................
polyfill ²¸µ
ب
ÆÀ
ر
171
.....................................................................
Ponyfill
¾´²
ب
IIFE
À
Closure
´س¸فاده ´ز
174
.....................................................................................................
Transpile
فهوم
±
175
........................................................................................
transpile
ا¾
È
´ر
ç
´ب
176
..........................................................................................
Babel
´س¸فاده ´ز
178
.....................................................................................................
babel
ا¾
ÈÛÀä
ما
178
.................................................................................................
core
ÛÀä
ما
179
...................................................................................................
CLI
ÛÀä
ما
================================================
FILE: HTML/140.html
================================================
180
.................................................................................................
Plugins & Presets
181
......................................................................................
babel
Ê
ا
»½
ظ
Ñ
× ت
±
·ا
182
........................................................................................
babel
À
ا
ÈPolyfill
³¶
بخش د
[
¸ا
Generator
و
Iterator
188
.................................................................................................
ا
È
Iterator
188
........................................................................................
iteratable
×Í
ت
À²
پ
189
............................................................................................
iterator
×Í
ت
À²
پ
189
............................................................................................
Iterator
·ی
²
مع
192
............................................................................................
object iterator
¶É
سا
193
..............................................................................................
Symbol
اد
ȼ
194
...............................................................................................
computed property
197
......................................................................
¶Ì±²Í
´س
À
ومی جا
»¿ ¾
ا
È
Iterable
197
.................................................................................................
ا
È
Iterable
198
.....................................................................................
بودن
iterable
رسی
²
ب
199
..........................................................................
ا
È
iterable
گان ´ز
¹ÑÑ
´س¸فاده ک
200
.............................................................................................
ا
È
Generator
204
......................................................................
generator
در
return
À
yield
´س¸فاده ´ز
205
....................................................................................
next
¹¸
م
Á
ب
²¸
د´دن پار´م
Þ
پا
208
.................................................................
generator
در
generator
´س¸فاده ´ز
210
..................................................................................
Á
حا·ظ
Ù²è
ی در م
Îѽµ
ب
210
.................................................................................
generator Ú
تو´ب
æ½
ک
²
ت
212
...............................................................................
ا
È generator
د
²
مو´رد کارب
================================================
FILE: HTML/150.html
================================================
´»²
¼ ب
µº» ϳ²
ح· ک
»²
عات کوک· ط
Í
ط
» ´
آ¼ر
ÛÈ
´ ج
»²
¼½ ب
í
ر
³
آ
Ú± ²¹
ک¶ ه
Ù
ی
É
م·ک
Ï
اهد
Ð
م
Ï
اهد
Ð
م
»
ر
²æÁ ³
مور
²±
و
à¸
هد
»
بخو
²
، ¼ق¾· کارب
µº» ϳ²
ک
ϳ
¾فا
º»
ز آن
» ²±
و
ภ²
ب¶ ظاه
Ú± ³
لو
.³
م·شو
Ñ
ا
º
ر
» ²¹
¼ر ه
²º ¶
عات کوک· ¼´ ب
Í
ط
» ،
د
É
ک
ها´
Ï»
ز ر
» µº» ¿¹È
ها ک¶ م
²¹
ه
óº
ر کوک· ¸و
³ Ï
شد
ϲ
ی
Ãè
عات
Í
ط
» µ
ق
²º
ز
» ´²
وگی
Â
´ ج
»²
ب
Ù
ی
æÉ¸
، با
Ù
ی
É
ک
ϳ
¾فا
º»
ن
³
و
ÈÁ
httpOnly
´»²
ب
³
موجو
flag
ز
» Ù
ی
Á»
م·¸و
³
شو
Ö
ا
ßÁ» ´³
د
Õ¾
م
ش¾¶
»³ ·º²¾º³ µ
ی
Â
¼ قاب
ϳ
بو
²Î¾Õ
م
http
槯
و
Ã
ر
³ ë±²
ز ط
»
ا
Ôɸ
عات کوک·ها
Í
ط
» flag ¿±»
³
مور
ÙÔ
ها´ م
ϳ»³ ϲ
ی
Ãè ´»²
ب
µº» ²¾Ô
د ¼ ب
Á
ر
»
د
Á ·±°
· با
Â
ی
à µ
ی
É
م
» Æ
ر ک
³
¾¶ کوک·ها
Î
ل
» ،
د
É
باش
:Ñ
د. مثا
Á²
ی
ÌÁ
ر
»²
ق
ϳ
¾فا
º»
document
.cookie =
“name=value;expires=Thu, 23 Dec 2019
15:45:00 UTC; domain=my.domain.com; path=/; HttpOnly;”
;
.³
م·شو
í²¾º³ Æ
قاب
http
槯
و
Ã
ر
³ ë±²
ز ط
» óÝÓ ²æÁ ³
کوک· مور
httpOnly
ن
³»³
ر
»²
با ق
[
)
Web storage API( ã
حافظه و
ܳ²¼
ϲ
ی
Ãè ÆÞ
م
Ú± ¶
یاز ب
Á ،µÉ±Í
¼ر ¼ ک
²º µÈº
ر
³ Ù
کوک·ها، ه
í²¾º³ Æ
قاب
µ
ماهی
Æ
لی
³ ¶
ب
باشد
í²¾º³ Æ
قاب
Û±²º µ
س
Á»
¼ م·¸و
µ
ش
»
د
Á
¼ر
²º µÈº
ر
³
ن
³
بو
í²¾º³ Æ
ک¶ ل×¼م· ب¶ قاب
´»²
· ¼ ب
Ó²Õ
م
²
¼رگ
²
م
ðäº
ر
³ ϳ»³ ´
ر
»
د
ÔÌÁ ´»²
· ب
ä
ب
»
ر
HTML
ز
» 5 ¶
سخ
Á
ر
³ ،
م·شد
í
حسا
»
د:
±
· جد
ÂÞ
¶ م
æÓ
حا
ç
و
Á ¼³
ز
» ϳ
¾فا
º»
ان
¹
م
» ¶
ک
µÓ²
ر گ
»²
سان ق
±
و
Á¶
ام
Á²
¾یار ب
û
ر
³ ϳ
¾فا
º»
ژگ·ها´
±¼ ¼
ات
Á
ا
¹
م
» ´»
ر
»³ Ú± ²
ک¶ ه
³
و
ÈÁ·
م
Ù
ه
»²Ó »
ر
localStorage , sessionStorage
د.
ɾ
هس
³
و
à Ë
ا
Ã
ا
± ¼ ز¾Ð
م
ر کوک·
³ ¶
ر حال· ک
³ ،
د
ɾ
هس
Ï
شد
ϲ
ی
Ãè
ر
»
د
Ý
´ م
»²
ا ب
ñÝÁ» Ą±
، بد¼ن ¸ار
API
¼³ ²
ه
Ñ
´ مثا
»²
ب
removeItem
¼
clear
ا م¾دها´
ñÝÁ» ´
، ب¶ جا
Ù±³²
یی¿ م·ک
Õ¸ »
ا´ کوک· ر
ñÝÁ»
¼ زمان
expire
د.
Á
ر
»³ Ï
د
Ô
ع
²
ب
»
ر ر
»
د
Ý
م
ò
ک¶ ¼ظیف¶ حذ
Ù±
ر
»³ »
ر
[
´È¶È
و
localStorage ، sessionStorage »
او
ÖÁ
باشد
Ï
آمد
Ä
ی
Å Ñ»
و
º ×
ی
Á
ا
È
´ ش
»²
ب
µº» ¿¹È
¼ م
³
ر
»³ ³
¼جو
API
¼³ ¿±» ¿
´ بی
³
ا
±
ها´ ز
µ
اه
Î
ش
·ÂÞ
¶ م
æÓ
حا
µ±²±
´ مد
»²
م¾فا¼ت ب
API
¼³ ³
¼ چ¶ ل×¼م· ب¶ ¼جو
µ
ر چیس
³
ان
б
ک¶ ¸فا¼تها
154
داد¶
DZ
ر
±¼
زی و م
²
ر¶ س
ÆÂ
ذ
================================================
FILE: HTML/157.html
================================================
Þ
آدر
Á
ب
blob
×±¹Ç
ت
Ù
ی
É
م·ک
ϳ
¾فا
º»
URL
وم·
È
ع
object
ز
»
ز آن
» ϳ
¾فا
º» ¼ ÚÉ
ب¶ لی
Ï
¾¶ شد
Ã
ا
º
blob
Ʊ
د
θ ´»²
ب
یاز
Á ³
مور
í
ر
³
، آ
²¾
م
»
ار
Å
ن
»
و
É
ب¶ ع
²æÁ ³
مور
blob
Ñ
ا
º
ر
» ¼
createObjectURL
· م¾د
Á»
و
û²Ó
¼ با
:³
¾¶ م·شو
Ã
ا
º
blob
¾یاب· ب¶
º³ ´»²
ب
URL.createObjectURL(blob)
“blob:null/d5782f61-86cc-4fdc-80bf-16d76b3002b1”
Ï
اهد
Ð
م
»
ر
Ù±» ϳ»³
ر
»²
ق
blob
ر
³ ¶
· ک
±»
¾و
Þ
، م
²
¼رگ
²
ر م
³ í
ر
³
¿ آ
±» ·Á»
و
û²Ó
ن با
»
م·¸و
Ñ
حا
·Õ
ق
»¼ ´
ها
ÚÉ
ر لی
³ ،µº» ¶¾Ó²
ر گ
»²
ق
í
ر
³
¿ آ
±»
ر
³ ¶
ک
null
ر
»
د
Ý
ک¶ م
Ù
ش¾¶ باشی
»³ ¶
. ¸وج
Ù
ی
±
ا
ÈÁ
:Ñ
´ مثا
»²
ب
µº» Ï
شد
Ö
ا
ßÁ»
ر آن
³
blob
µÃ
ا
º ¶
ک
³
هد بو
»
و
à ´»¶É
م
»³ í
ر
³
¼ر، آ
²º ´¼
ر
²
¼ ب
blob:site.com/d5782f61-86cc-4fdc-80bf-16d76b3002b1
م·باشد.
site.com
¶É
م
»³
با
µ±
ا
º
ز
»
blob
Ú± í
ر
³
آ
blob
ا¾
ȹ¸
م
Ä
بخ
Ú±
د
Á»
ک¶ م·¸و
³
ر
»³ ³
¼جو
blob
ر¼´
²
ب
4
á²
یات ب
ÂÈ
ع
Ö
ا
ßÁ» ´»²
م¾د ب
Ú± ²
حاض
Ñ
ر حا
³
é
ر قال
³ ¼ ϳ»³ á²
ب
)
ا
Ô¾Á»
ا
±( ²æÁ
مد
µ±
با
Ï
ار
È
ش
Ú±
¸ا
Ë
ا
à µ±
با
Ï
ار
È
ز ش
» »
ر
²æÁ ³
مور
blob
ز
»
هد.
³·
م
µÐ
د بازگ
±
جد
object blob
Ú±
:³
م·شو
ê±²Õ¸ ²±
ز
Ö²Ó ¶
¼ ب
³
ر
»³ Ö
ا
Á
slice
· شد
Ó²Õ
م¾د´ ک¶ م
Blob.slice(start, end, contentType);
ر
³ Ù
هی
»
و
÷
ک¶ م
µº» ·±»
¾و
Þ
م
ç
و
Á Ö
و
º ²¾
م
»
ار
Å ¼
ان
±
ا
Å µ
بی
Ö¼³ ²¾
م
»
ار
Å ،ç¼²
ش
µ
بی
Ѽ» ²¾
م
»
ار
Å
.Ù
ش¾¶ باشی
»³
د
±
جد
blob
4 slice
157
Ϳ¸ ØÉ³
================================================
FILE: HTML/16.html
================================================
³¶
زد
²
بخش ی
[
ت
±
سکری
²
جاو
ËÄ
جا
Æ
ا¸ا
Ì
خ
216
.....................................................................................
!] [
با
] [
¾ بودن
À
ا
Ë
م
217
.............................................................................................
)
موز
(
baNaNa
217
............................................................................................
د ´س¶!
¹¿ NaN
217
................................................................................
!
NaN
¶ با
˽º ²
´ب
²
ب
NaN
218
...............................................................................
!¹Ñ¸ËÈ
object
籫
آر
À
null
219
.........................................................................
] [
مان
ç»È
ودن
Ǻ بودن
á½Õ
ص
219
....................................................................
!¶Ë½º
اه
Ǹ
لی ´ش
À ¶
اه ´س
Ǹ
´ش
null
220
......................................................................
!²
´ز صف
²¸
رگ
ç
د¾ ب
¹¿
´ر
¹
× مق
Ò´¹
ح
220
.........................................................................................
ا
È Á±´
¸¼ آر
Ë
ب
Ú»
ج
221
............................................................................
籫
در آر
ÂȲ
¶ س
Ï
ا¾ پ
È
کاما
221
...................................................
اس¶!
Ñ
مع
Ä
ا
»
ت
Á
¾ ب
ß
½و
È Ó± ،Á±´
¾ آر
²
´ب
²
رسی ب
²
ب
222
.............................................................................................
Number
با
undefined
223
..............................................................................
false
À
true
اضی با
±
باز¾ ر
224
.......................................................................................
´د
¹¿´ æ½Ø¿ ű´ç·´
224
...........................................................................
0é2
À 0é1
Ú»
درس¸ی حاص× ج
225
...............................................................................
د
¹¿ Á
´¾ س
²
ب
Á˱
مقا
Ä
ا
غ´
225
.............................................................................................
اضی
±
ا¾ ر
Ⱦ
باز
227
...............................................................................
call
ÂȲ
¶ س
Ï
ی پ
º´
و
É´²·
227
.......................................................................................
constructor
ژگی
±À
228
............................................................
´س¶
object
Ó±
object
ژگی ´ز
±À Ó± ¹½Ð
ک
229
...........................................................................................
prototypes
Á
سی ب
²¸
دس
229
.....................................................................................
æ½Ø¿
Object
¶É
سا
230
.......................................................................................
)labels
(
ا
ÈæË
چ
²
ب
230
...................................................................................
label
´س¸فاده تودرتو ´ز
231
.......................................................................................
!æ½Ø¿ try..catch
================================================
FILE: HTML/160.html
================================================
231
................................................................................
!æ
جال
arrow functions
232
.........................................................................
arrow functions À
ا
È
آرگومان
232
.....................................................................................
return
اه
Ǹ
´س¸فاده ´ش
233
..............................................................
Math.min
´س¶ ´ز
²¸Í
کوچ
Math.max
233
......................................................................................
ا
Ȳ½
د م¸غ
¹Ø
·ی م
²
مع
234
.............................................................................
籫
آر
sort
Ú
تاب
ê²
ف
Ͻ
ر·¸ار پ
³¶
بخش دوازد
[
Æ
رد
³¼
ا
È Í
ائ
Ç
و ض
Å
و
²¹
ج
238
....................................................................................................
د´ده
Ö´
و
º´
238
.................................................................................................
ومی
»¿ Ú
تو´ب
239
.......................................................
)Object
(
´ش½اء
À )Number(
´د
¹¿´ ¾
ا
È
ژگی
±À
240
...........................................................................
)
Number ¾À
ر
²
ب
(
´د
¹¿´ Ú
تو´ب
240
..........................................................................
RegExp Â
ظ
Ñ
م
Ê´
ار
Ç¿ ¾
ا
»ÑÈ´
ر
240
....................................................................................
)
Modifiers(
ا
È
ه
¹º´²½
پ
241
.......................................................................
)
Metacharacters(
ا
Ȳ¸
م¸اکار´ک
243
.............................................................................
)
Quantifiers(
ا
鑄
½¶س
»
ک
243
.....................................................................
)
RegExp( Â
ظ
Ñ
م
Ê´
ار
Ç¿ ¾
ا
È
ژگی
±À
244
........................................................................
)
RegExp( Â
ظ
Ñ
م
Ê´
ار
Ç¿ ¾
ا
ȹ¸
م
244
................................................................
¶Ì±²Í
´س
À
ه در جا
¹
ش
À
¾ رزر
¹½Ð
ک
Ê
ا
»Ð
ک
================================================
FILE: HTML/170.html
================================================
npm install --save-dev @babel/core
¶ م·باشد.
Õº
¸و
ó
ی
Þ
ر م
³ ϳ
¾فا
º» ´»²
ب
óÝÓ ù
ی
¹Å ϲ
ی
Ãè ·ÉÕ
ب¶ م
--
dev-
flag، save
¿ کد
±»
ر
³
.µ
ش
»³
هد
»
خو
Á ³
¶ ¼جو
Á
¿ ک¾ابخا
±»
ز
» ´²â» ·±
ا
ÔÁ ·
¼ج
²Ã ó
ی
Þ
ر م
³ ¶
´ ک
»¶Á
ب¶ گو
´»²
ز آن ب
» ¼ ϳ²
ک
require
µ
پ
±²¹º»¼
ر کدها´ جا
³ »
ن آن ر
»
ح¾· م·¸و
»
ب¶ ر
ѼÜ
¿ ما
±» éàÁ
با
:³²
ک
ϳ
¾فا
º» ²æÁ ³
ت مور
ͱ
د
θ Ö
ا
ßÁ»
const
babel =
require
(
“@babel/core”
);
babel.transform(
“code”
, optionsObject);
¼ µ
پ
±²¹º»¼
ر کد جا
³
· آن
Á»
و
û²Ó
با
babel
ز هس¾¶
» ϳ
¾فا
º» ¶
· م·باشد ک
ÉÕ
¿ م
±
بد
ø
و
Ó
کد
ر¼´ آن
²
ب
transform
م¾د
·Á»
و
û²Ó
م·باشد ک¶ با
Ʊ
د
θ Ö
ا
ßÁ» ´»²
ب
object babel
ز
» ϳ
¾فا
º»
قاعد¸ا
éà .³
م·شو
Ö
ا
ßÁ» ²¾
م
»
ار
Å
ن
»
و
É
ب¶ آن ب¶ ع
Ê
بو
²
ات م
È
ی
æÉ¸ ¼ ²æÁ ³
ن کد مور
³»³ í
ا
Å ¼
Ú± ¶
یاز ب
Á ìÅ ،
½ آ¼ر باشد
»
عذ
µº» ¿¹È
م
Ö
ا
à ƹ
ب¶ ش
core
ز
» ϳ
¾فا
º» ¶
د ک
±
م¾وج¶ شد
.³
م·شو
í
حسا
»
ت
ͱ
د
θ ¿±» Ö
ا
ßÁ» ´»²
ل· ب
»¼
ژ
±¼ ó
ی
Þ
م
CLI
ÛÀä
ما
ر
³ ،µº» ϳ
ام¶ها بو
Á²
ب¶ ب
Ê
بو
²
مور م
» Ö
ا
ßÁ» ´»²
½ ب
»
ها´ جذ
ó
ی
Þ
ز م
» ·¹± Ï
ر
»
و
È
ه
6
CLI
ó
ی
Þ
م
یاز ب¶
Á
د
ɱ
آ
²Ó ¿±» Ö
ا
ßÁ» ´»²
. ب
³
و
ÈÁ ϳ
¾فا
º»
transpile
´»²
ن ب
»
م·¸و
ó
ی
Þ
¿ م
±»
ز
» ،×
ی
Á
babel
³
مور
:Ñ
م·باشد. مثا
7
@babel/cli
ن
³
بو
éàÁ
npm install --save-dev @babel/core @babel/cli
./node_modules/.bin/babel src --out-dir dist
Ê
بو
²
´ م
²É±
با
Ʊ
ا
Ó ¶
ب
./node_modules/.bin/
²
ز مسی
»
babel
Ʊ
ا
Ó ¶
ه· ب
³ í
ر
³
با آ
°
ر کد با
³
³
ها´ موجو
Ʊ
ا
Ó ³
¿ مور
±»
ر
³ ¶
، ک
Ù
هی
³ í
ا
Å
ب¶ آن
»
ر
²æÁ ³
ات مور
È
ی
æÉ¸ Ù
ی
Á»
¼ م·¸و
Ù
ی
º²
می
cli
ب¶
، بد¼ن
Ù±» ¶¾Ó²ÌÁ ²æÁ
ر
³ ı»²
· ب
±
د
θ å
ما چون هی
» ،
د
É
م·ک
ÆÝ¾É
م
dist
وش¶
Å ¶
ب
»
ر
src
²
ر مسی
³
.³
م·شو
ÆÝ¾É
سان م
¹±
شدن ¼ ب¶ صورت
Ʊ
د
θ
6 Command Line Interface (CLI)
7 https://babeljs.io/docs/en/babel-cli
179
Íä· ØÉ³
================================================
FILE: HTML/182.html
================================================
};
}
RetuRn
{
value:
undefined
,
done:
true
};
};
};
return
iterator;
}
}
:Ù
ی
É
م·ک
ϳ
¾فا
º» ²æÁ ³
مور
object
ز
» ·
گ
³
ا
º ¶
ی× ب
Á °
´ کد با
»²
ج
» ´»²
ب
var
levelCounter = Iterable[
Symbol
.iterator]();
levelCounter.next();
// {value: “Level 1” , done: false}
levelCounter.next();
// {value: “Level 2” , done: false}
levelCounter.next();
// {value: “Level 3” , done: false}
levelCounter.next();
// {value: undefined , done: true}
Ö
ز
°
object
Ú±
ر
³ ϳ
¾فا
º» ³
ن مور
»
و
É
از´ ع
º ³
ر
»
د
Á
¾ا
º» ´»²
ب
Ù
م¾د ک¶ گف¾ی
Ú± ،Ï
شد
²
ک
è
ر کد
³
»
ر
object
¿±» .
د
É
· م·ک
Á»³²
بازگ
object
Ú± ¶
ک
Ù±³²
ک
ê±²Õ¸
Symbol.iterator
Ö
ا
Á
با
»
ر
Ù±
ر
»³
¶Â
ح
²
ر´ م
»
د
ÔÌÁ ¶
ک¶ ¼ظیف
Ù±³²
ک
ê±²Õ¸
level
Ö
ا
Á ¶
ب
²
م¾÷ی
Ú±
ز آن
» ÆÎ
¼ ق
Ù±
امید
Á
iterator
ک¶
Ù±³
و
ÈÁ ³
ا
ß±»
next
Ö
ا
Á ¶
ب
Û
¸اب
Ú±
iterator
ب¶
Ê
بو
²
م
object
ÆÃ»³
ر
³ .³
ر
»³ Ï
د
Ô
ع
²
ب
»
ر
²
کارب
·Á»³²
بازگ
»
ر
éº
ا
É
م
Ąº
ا
Å ،Ï
ر´ شد
»
د
ÔÌÁ
level
í
ا
º» ²
¼ ب
Ù
ی
Á×
ب
»
بار صد
²
ر ه
»²¹¸ ²
ر ه
³ Ù
ی
Á»
ب¾و
.Ù
ی
É
ک
Ú± ¼ ϳ
و
ÈÁ ϳ
¾فا
º»
iteration
ƹ¸¼²Å ³
ر
»
د
Á
¾ا
º»
ز
» Ï
¼بار
³ ×
ی
Á
ها
Ąº
ا
Å µ
م
²Ó
ن
³
بو
³
ر
»
د
Á
¾ا
º» ´»²
ب
مان ب¶
²æÁ ³
ر مور
»²¹¸ ²
گ
»
م·باشد ¸ا
done
¼
value
ژگ·
±¼ ´»
ر
»³ ¶
ک
Ù
هی
³·
م
µÐ
بازگ
object
.³
م·شو
true
²
ب
»²
ب
done
ر
»
د
Ý
باشد م
Ï
ید
º
ر
Ö
ا
ȸ»
ر
»²¹¸ Ö
ا
ßÁ» ´»²
¶ ب
ÝÂ
ز ح
» ç
و
Á ¿±» ¼ ³
ر
»³ ³
¼جو
for...of
¶ÝÂ
· ح
Âû³
¾ار
Ã
ا
º
ر
³ ³²¹±¼
ی¿ ر
È
ا ه
Ý
قی
³
د
É
م·ک
³
ا
ß±»
یدن آنها
º
ر
Ö
ا
ȸ» ¶
¸ا زمان ب
²
اص
É
ع
Ö
ا
ȸ ı
ا
È
ی
Å ´»²
ب
iterator
Ö²Ó ¶
ب
object
Ú±
195
͸
د
ØÉ³
================================================
FILE: HTML/198.html
================================================
function
*
jsBook
(
ver
){
yield
“first version: “
+ ver;
yield
“version: “
+ (ver +
1
);
}
var
book = jsBook(
1
);
console
.log(book.next());
// {value: “first version: 1”, done: False}
console
.log(book.next());
// {value: “version: 2”, done: false}
console
.log(book.next());
// {value: undefined, done: true}
Ï
شد
yield
²±³
ا
Ý
ن م
³»³ µÐ
ب¶ بازگ
²ßÉ
، ک¶ م
book
²
ر¼´ م¾÷ی
²
ب
next
´ م¾د
»²
ج
»
¶ بار
º
ز
» ìÅ
.Ù±
م·شو
iteration
یدن
º
ر
Ö
ا
ȸ» ¶
¼ م¾وج¶ ب
³
م·شو
true
با
²
ب
»²
ب
done
ژگ·
±¼
ر
»
د
Ý
، م
³
م·شو
Û
یدن کدها´ ¸اب
º
ر
Ö
ا
ȸ» ¶
· ب
ÉÕ
ب¶ م
done
ژگ·
±¼
شدن
true
ان
È
ا ه
±
iteration
یدن
º
ر
Ö
ا
ȸ» ¶
ب
م·باشد.
return
¼لی¿
»
ج¶ شدن با
»
ا مو
±
yield
¿±²Ã
¸ا آ
»
ب¾د
»
ا
Ⱦ
· ح
ÉÕ± ،Ù
ی
É
م·ک
ϳ
¾فا
º»
book
²
ز م¾÷ی
»
next
Û
´ ¸اب
»²
ج
»
بار
²
´ ه
»²
ید ب
É
ک
µ
ق
³ ²
گ
»
Û
ر¼´ آن، ¸اب
²
ب
Ù
ی
Á»
، ¸ا ب¾و
Ù
هی
³ À
ی
à
¸خ
²
م¾÷ی
Ú± ¶
¼ ب
ϳ²
ک
»²
ج
» »
ر
generator
Û
¸اب
µ
س
±
م·با
¾ا
±
ا
ÔÁ ،Ù
دهی
Á Ö
ا
ßÁ» »
¿ کار ر
±» ²
گ
»
ما
» ،Ù
ی
É
ک
µÓ
ا
±
ر
³ »
ر
³
و
à ²æÁ ³
مور
²±³
ا
Ý
¼ م
Ù
ی
É
ک
»²
ج
» »
ر
next
.Ù±¼²
ب
Ä
ی
Å
yield
¼لی¿
»
¸ا
Ù
ی
Á»
م·¸و
ید:
É
¸وج¶ ک
²±
ز
Ñ
ب¶ مثا
(
function
*
jsBook
(
ver
){
yield
“first version: “
+ ver;
yield
“version: “
+ (ver +
1
);
})(
1
).next();
// {value: “first version: 1”, done: False}
»
ز آن ر
»
next
¼لی¿
» ¼ Ù
هی
³·
ر م
»²
ق
IIFE
ØÍ
ب
Ú± ÆÃ»³
ر
³ ¼
generator
Ö²Ó ¶
ب
»
ر
jsBook
Û
¸اب
ی×
Á
¼ ما
µ
یس
Á
generator
²Ì±³ ·¾Ð
ر بازگ
»
د
Ý
چون م
next
¼لی¿
» ´»²
ج
»
ز
» ìÅ ،Ù
ی
É
م·ک
»²
ج
»
203
͸
د
ØÉ³
================================================
FILE: HTML/206.html
================================================
ید:
É
¸وج¶ ک
Ë
و
àà ¿±»
ر
³ ²±
ز
Ñ
. ب¶ مثا
Ù
ی
É
ک
ϳ
¾فا
º» ·ÂÎ
ق
yield
ر
³ ·¾Ð
ر بازگ
»
د
Ý
م
function
*
advancedGenerator
(
input
){
console
.log(input);
const
j =
2
* (
yield
(input *
10
));
console
.log(j);
const
k =
yield
( (
5
* j) /
4
);
console
.log(k);
return
(input + j + k);
}
var
gnFunction = advancedGenerator(
10
);
gnFunction.next(
5
);
// {value: 100 , done: false } 10
gnFunction.next(
20
);
// {value: 50 , done: false } 40
gnFunction.next(
30
);
// {value: 80 , done: false } 10
:Ù
هی
³·
م
ï²
ش
²¾
¸ی
²º
ب¶ صورت
»
ر
³
د مور
É
´ م·باشد. چ
³
ا
±
ات ز
¹Á ´»
ر
»³ ¶
ک
°
¶ کد با
¹¸ ð
ر ¸وضی
³
±
،³
م·شو
»²
ج
» Û
¼ ¸اب
ϳ²
ه· ک
³
ر
»
د
Ý
م
10
ر
»
د
Ý
با م
»
ر
input
آرگومان
generator
Û
· ¸اب
Á»
و
û²Ó
با
.³²
هد ک
»
خو
Á »²
ج
» »
ر
console.log
ارت
Î
، ع
Û
ن ¸اب
³
بو
generator
Æ
لی
³¶
ب
»²
ج
» ¿±»
±
yield
¼لی¿
» ،
gnFunction
²
ر¼´ م¾÷ی
²
ب
next
Û
· شدن ¸اب
Á»
و
û²Ó
با
iteration
¼لی¿
»
ر
³
ر
»
د
Ý
م
input *
10
با
yield
¼ µº» 10
با
²
ب
»²
ب
input
، چون
³
م·شو
»²
ج
» ²æÁ ³
مور
generator
Û
¸اب
ارت
Î
ع
ì
پ
º ،³
م·شو
ϳ»³ µÐ
بازگ
²±
ز
object
¼ ³
هد بو
»
و
à 100 ²
ب
»²
ب
value
ìÅ ،
د
Á»³²
بازم·گ
:³
م·شو
10
ر
»
د
Ý
شدن م
ö
ب¶ چا
²ßÉ
ک¶ م
³
م·شو
»²
ج
» Ѽ»
console.log
{value:
100
, done:
false
}
±
ر
³ ·
، ¼ل
µº» Ï
شد
ϳ»³ í
ا
ŠѼ»
next
Û
ب¶ ¸اب
5
ر
»
د
Ý
ک¶ م
µº» ¿±» »²
ج
» ¿±» ·º
ا
º» ¶¾¹Á
³
و
ÐÁ ϳ»³ í
ا
Å Û
ر ب¶ ¸اب
»
د
Ý
¿ م
±» ¶
ر صور¸· ک
³ ·¾
، ح
³
ر
»
د
Á ´²
ی
â
¸ا
å
هی
iteration
·ÂÕÓ ´»²
ج
»
Ù±
ر
»
د
Á
yield
ÆÎ
ز ق
» ¼ ϳ
بو
yield
¼لی¿
» ¶
ک
»²
، چ
³
هد بو
»
و
à ÆÎ
ق
µ
¼ج·، حال
²Ã
ان
È
¼ج· ه
²Ã ×
ی
Á
.³²
ر گی
»²
آن ق
ѳ
ا
Õ
ر م
»
د
Ý
¿ م
±» ¶
ک
±
Ï
شد
ϳ»³ í
ا
Å 20
ر
»
د
Ý
م
next
چون ب¶ م¾د
generator
Û
ر¼´ ¸اب
²
ب
iteration
¼می¿
³
ر
³
´ کد با
»²
ج
» ¼ µº» Ï
شد
20 ѳ
ا
Õ
م
yield
´»²
· ب
ÂÎ
ق
iteration
¶ß
¾ی
Á ¶
ک
µº» ¿±»
د
ÉÁ
، ما
槯
د.
É
م·ک
»
ید
Å ¶
م
»³»
ر
»
د
Ý
¿ م
±»
206
²º
Generator
و
Iterator
================================================
FILE: HTML/209.html
================================================
var
sequence = fibonacci();
console
.log(sequence.next().value);
// 0
console
.log(sequence.next().value);
// 1
console
.log(sequence.next().value);
// 1
console
.log(sequence.next().value);
// 2
console
.log(sequence.next().value);
// 3
console
.log(sequence.next().value);
// 5
console
.log(sequence.next().value);
// 8
console
.log(sequence.next(
true
).value);
// 0
console
.log(sequence.next().value);
// 1
console
.log(sequence.next().value);
// 1
console
.log(sequence.next().value);
// 2
¼ Ï
ر شد
»²
ق
²
ب
fibonacci Û
ر ¸اب
³
reset
ʲ
ش
next
Û
ب¶ ¸اب
true
ر
»
د
Ý
ن م
³»³ í
ا
Å
با
°
با
Û
ر ¸اب
³
هد.
³·
م
µÐ
بازگ
»
ر
²±³
ا
Ý
م
»
ب¾د
»
ز
» Û
¸اب
[
generator
د¼
generator
ز
² µ
اد
Ö¿
س
²
،Ù
ی
É
· ک
Á»³²
بازگ
²Ì±³
generator
Ú± ÆÃ»³
ر
³ »
ر
generator
Û
¸اب
Ú± Ù
ی
Á»
¶ ب¾و
¹É±» ´»²
ب
ϳ
¾فا
º» »
ر
³
و
à ²æÁ ³
مور
generator
Û
¼ ¸اب
Ù
ی
É
ک
ϳ
¾فا
º»
yield*
ز
»
yield
ب¶ جا´
µ
س
±
م·با
:Ñ
´ مثا
»²
، ب
Ù
ی
É
ک
function
*
generatorOne
() {
yield
3
;
}
function
*
generatorTwo
() {
yield
* generatorOne();
}
const
iterator = generatorTwo();
console
.log(iterator.next().value);
// output value: 3
208
²º
Generator
و
Iterator
================================================
FILE: HTML/211.html
================================================
¿¹È
، م
µº» Ï
شد
ö
چا
Ö¼³ Û
´ ¸اب
»²
ج
»
ر
³ Ѽ»
generator
Û
´ ¸اب
»²
ج
» ¶ß
¾ی
Á ¶
ک
Ù
ی
É
م·ک
Ï
اهد
Ð
م
ان
¹
م
» ¿±» ¶
ک
Ù
ی
É
ک
ϳ
¾فا
º» ²Ì±³ ·Õ
ز ¸اب
»
شدن
yield
ز
» ¶Ã²
چ
Ú±
ر
³ Ù
ش¾¶ باشی
»³
یاز
Á ¶
ک
³
بو
yield
Ù
ی
Á»
م·¸و
°
کد با
³
ر مور
³ Ñ
´ مثا
»²
م·باشد، ب
Ù
ه
»²Ó ´³
عا
yield
· با
Î
کی
²¸
ی× ب¶ صورت
Á
:Ù
ش¾¶ باشی
»³
yield*
ز
»
د
Õ
ا ب
± ¼ ÆÎ
ق
»
ر ر
»
د
Ý
´ م
³
عا
function
*
generatorOne
() {
yield
3
;
// return “finished”;
yeild
4
;
}
function
*
generatorTwo
() {
yield
1
;
yield
2
;
yield
* generatorOne();
yeild
6
;
}
const
iterator = generatorTwo();
console
.log(iterator.next());
// {value: 1 , done: false}
console
.log(iterator.next());
// {value: 2 , done: false}
console
.log(iterator.next());
// {value: 3 , done: false}
console
.log(iterator.next());
// {value: 4 , done: false}
console
.log(iterator.next());
// {value: 5 , done: false}
console
.log(iterator.next());
// {value: 6 , done: false}
console
.log(iterator.next());
// {value: undefined , done:
true}
:µº» µ
ی
È
ه
» ×Ç
¾¶ حا
¹Á
د
É
چ
ø
و
Ó
کد
³
ر مور
³
±
.³²
ک
ϳ
¾فا
º» ،Ï»
لخو
³ ³»
د
Õ¸ ¶
´ ب
³
عا
yield
ز
»
ن
»
ز آن م·¸و
»
د
Õ
ا ب
± ¼
yield*
ز
» ÆÎ
ق
±
ı
ا
È
ی
Å ·ÂÕÓ
iterate
آن با
ÆÃ»³ ´
ها
yield
Ö
ا
ȸ
yield*
ب¶ صورت
Û
¸اب
Ú±
شدن
»²
ج
»
با
د.
É
باش
Û
¿ ¸اب
±» ¶Á
ر بد
³
آن کدها
Ö
ا
ȸ ¶
ک
µº» ¿±»
د
ÉÁ
د شد ¼ ما
É
ه
»
و
Ã
±
Ï
شد
ϳ
ز
»
صد
Û
¶ ¸اب
Á ،³
هد بو
»
و
Ã
true
·Â
ص
» Û
ها´ ¸اب
yield
Ö
ا
ȸ»
ز
»
د
Õ
ب
done
ر
»
د
Ý
م
209
͸
د
ØÉ³
================================================
FILE: HTML/212.html
================================================
new
String
(
“str”
) ==
“str”
;
// -> true
typeof new
String
(
“str”
);
// -> ‘object’
// object ?
new String(“str”); // -> [String: ‘
str
’]
call
ÂȲ
¶ س
Ï
ی پ
º´
و
É´²·
:µº» Ï
شد
»
ید
Å
@cramforce
óº
¸و
³
¿ مور
±»
console
.log.call.call.call.call.call.apply(
a
=> a, [
1
,
2
]);
¿±
د
É
ن چ
³²
ک
Ñ
ا
È
ع
» ·¾
، ح
Ù±»Ï³²
ک
Ñ
ا
È
ع
»
console.log
ب¶
apply
با
»
ر
call
م¾د
Ñ
¿ مثا
±»
ر
³
ما
باشد،
ûÉ
¾ان گ
±»²
· ب
È
د ک
±
، شا
³²
·ک
ÈÁ ³
ا
ß±» ·Â¹Ð
· شدن، م
Á»
و
û²Ó ϲ
ی
ßÁ
ب¶ ز
²Ì±³
call
ید.
É
¶ ک
Õ
ال
ä
· م
È
ک
»
ر
app
¼
call
ب¶ م¾دها´
Ê
بو
²
ت م
»
د
ɾ
ید مس
Á»
م·¸و
constructor
ژگی
±À
const
c =
“constructor”
;
c[c][c](
‘console.log(“MyMessage?”)’
)();
// > MyMessage?
هید
³ Ï
جاز
»
؟
µº» Ï
شد
parse
Ï
شد
ϳ»³ ¶¾
· رش
ÉÕ± ،¶
ک
µº» ¿±»
د
±
م·آ
Ä
ی
Å ¶
ل· ک
»
و
º ¿
¼لی
»
:Ù±²
و ب
Â
¶ ج
Â
ح
²
¶ ب¶ م
Â
ح
²
ب¶ صورت م
»
ر
Ñ
¿ مثا
±»
// Declare a new constant which is a string ‘constructor’
const
c =
“constructor”
;
// c is a string
c;
// -> ‘constructor’
// Getting a constructor of string
c[c];
// -> [Function: String]
227
͸
یازد
ØÉ³
================================================
FILE: HTML/23.html
================================================
// Getting a constructor of constructor
c[c][c];
// -> [Function: Function]
// Call the Function constructor and pass
// the body of new function as an argument
c[c][c](
‘console.log(“WTF?”)’
);
// -> [Function: anonymous]
// And then call this anonymous function
// The result is console-logging a string ‘What?’
c[c][c](
‘console.log(“What?”)’
)();
// > What?
óº
هد ک¶ ¸و
³·
م
µÐ
بازگ
»
· ر
Õ
،¸اب
Object
Ï
د
Á
از
º ìÁ²Ó
ر
Object.prototype.constructor
، م¾د
Ù±³²
ک
ϳ
¾فا
º» ¶¾
ز رش
» ¶
ک
Ñ
¿ مثا
±»
ر
³ .µº» Ï
¾¶ شد
Ã
ا
º
object
´»²
ب
²æÁ ³
مور
instance
ی¶
Ý
´ ب
»²
ب
é
¸ی
²¸ ¿
ی
È
¼ ب¶ ه
³
م·بو
Number
Ù±³²
م·ک
ϳ
¾فا
º» ³»
عد
»
ز
» ²
گ
» ،³
هد بو
»
و
Ã
String
Û
´ ¸اب
»²
ج
»
IIFE
Û
د، ب¶ صورت ¸اب
±
جد
Û
¶ ¸اب
Á
ن بد
³»³ í
ا
Å ¼ Ï
د
Á
از
º
· م¾د
Á»
و
û²Ó
ها. با
ϳ»³ ç
و
Á
.³³²
م·گ
Ö
ا
ßÁ»
´س¶
object
Ó±
object
ژگی ´ز
±À Ó± ¹½Ð
ک
// create sth
{
[{}]: {}
}
// { ‘[object Object]’: {} }
Ʊ
د
θ ´»²
· ک¶ ب
ÉÕ
¿ م
±» ¶
د، ب
ɱ
م·گو
Ï
شد
)
property computed
(á
ز
»³²Å ·
ژگ
±¼ ،µ
¿ حال
±» ¶
ب
ن
»
و
É
ب¶ ع
Ï
شد
á
ز
»³²Å
¼ ب¶ صورت
Ù
هی
³·
ر م
»²
ق
] [ ÆÃ»³ »
ژگ·، آن ر
±¼ ¶
ب
²æÁ ³
ارت مور
Î
شدن ع
رش¾¶
³
ا
ß±» ¼
آن
á
ز
»³²Å î
، باع
] [ ÆÃ»³
ر
³ { }
ن
³»³
ر
»²
ی× ق
Á Ñ
¿ مثا
±»
ر
³ ،³
م·شو
ϳ
¾فا
º» ·
ژگ
±¼
.Ù
هی
³ Ö
ا
ßÁ» »
¿ کار ر
±» ´»Ï²
ی
ßÁ
ب¶ صورت ز
Ù
ی
Á»
. ح¾· م·¸و
³
م·شو
Object
228
Çɱ
وا اسکر
²
ج
ÍȲ
ی ج
²º ²ÎÂ
================================================
FILE: HTML/231.html
================================================
27
خ´ اول
µ
// Single-line comment
/* Multi
line
comment */
طی
É Ó
¶گذ´ر¾ ت
Ñ
کام
µÉ
ن کام
»
و
É
د ب¶ ع
±
بیا
//
ز
»
د
Õ
چی×´ ک¶ ب
²
. ه
Ù
ی
É
م·ک
ϳ
¾فا
º»
//
ز
» ·äà ڸ µÉ
وش¾¿ کام
Á ´»²
ب
´²¾
ک
»
کار
²
· ه
äà ڸ µÉ
ر کام
³ .
هد شد
»
و
à ¶¾Ó²
گ
Ï
د
±³
ا
Á á
ز
»³²Å Ö
ا
ÌÉ
¼ ب¶ ه
Ï
¾¶ شد
Ó²
گ
²æÁ
ر
³
ً
ا
Ó²
ر´ ص
»
گذ
µÉ
کام
ç
و
Á ¿±» ¿
ی
ÉãÈ
. ه
³
ر
»
د
Á ³
¾· ¼جو
±³¼
د
Þ
¼ م
³²
ی
Ì
ر ب
»²
ق
ϳ
¾فا
º» ³
د مور
Á»
م·¸و
.³
شو
ϳ
¾فا
º»
ا´ آن
Ô¾Á»
ر
³
ا
±
ز کد
» ÆÎ
د ق
Á»
م·¸و
var
a =
1
;
// Declare a, give it the value of 1
طی
É ¹Ñ
¶گذ´ر¾ چ
Ñ
کام
·Õ
ق
»
´ مو
»²
ر´ ب
»
گذ
µÉ
کام
ç
و
Á ¿±» .³
م·شو
ϳ
¾فا
º»
/*.. */
ز
» ·äÃ
د
É
ر´ چ
»
گذ
µÉ
ر کام
³
ر
³ .³²
ر م·گی
»²
ق
ϳ
¾فا
º» ³
ش¾¶ باشد مور
»³ ³
¼جو
óÃ Ú±
ز
» ²¾Ð
ا¸· بی
Þ
یاز ب¶ ¸وضی
Á ¶
ک
á
ز
»³²Å Ö
ا
ÌÉ
ک¶ ب¶ ه
»²
، چ
³²
ک
ϳ
¾فا
º»
¶ آن
Á
ر میا
³
*/
é
کی
²¸
ز
»
ن
»
·¸و
ÈÁ ·äÃ
د
É
ر´ چ
»
گذ
µÉ
کام
ر´
»
گذ
µÉ
کام
ç
و
Á ¿±»
ز
» .³²
هد ک
»
و
Ã
ا
äà ³
ا
ß±» ¼ Ï
¾¶ شد
Ó²
گ
²æÁ
ر
³ ´
ر
»
گذ
µÉ
ا´ کام
Ô¾Á»
ن
»
و
É
ب¶ ع
Ï
اهد
Ð
م¶ م
»³»
ر
³ »
ر
²¾Ð
ها´ بی
Ñ
. مثا
³²
ک
ϳ
¾فا
º» ×
ی
Á ¶
ام
Á²
ز ب
»
کد
óÃ Ú± ¶Á
ر میا
³ ·¾
ن ح
»
م·¸و
ید:
É
م·ک
/* Declare a, give it the value of 1
Declare a, give it the value of 1 */
var
a =
1
;
var
b =
2
;
var
a =
/* Declare a, give it the value of 1 */
1
;
ر´
»
گذ
µÉ
کام
³
م·شو
ϳ
آ¼ر
µ
پ
±²¹º»¼
ز کدها´ جا
» ·±
ها
Ñ
ک¶ مثا
Ä
بخ
²
´ ه
»²
¿ ک¾ا½ ب
±» ¶
م
»³»
ر
³
ز
» ϳ
¾فا
º» .
هد
³ ¶Ç»
ر
» Ï
وش¾¶ شد
Á
¶ کد
Õä
ق
³
ر مور
³ »
´ ر
²¾Ð
ات بی
Þ
¸ا ¸وضی
³²
ی× صورت م·گی
Á
»
ن آن ر
»
·¸و
ÈÁ ¼ ³
سو½ م·شو
Þ
· م
Á
زبا
²
س· با ه
±
و
Á¶
ام
Á²
ب
²±
ذ
Å
ا
Á ·±»
جد
Ä
ر´ بخ
»
گذ
µÉ
کام
.µÓ²
گ
Ï
د
±³
ا
Á
================================================
FILE: HTML/3.html
================================================
function
foo
() {
a =
1
;
// `a` not formally declared
}
foo();
a;
// `1` auto global variable
¿±» ¶
ب
²
شدن م¾÷ی
ê±²Õ¸ .µº» Ï
شد
)
declare
(³
ا
ß±» Ú
¸وما¸ی
»
ب¶ صورت
°
ر کد با
³
a
²
م¾÷ی
Ï
و
ÞÁ ²¾Ô
ب
Ø
ر
³ ´»²
ما ب
» ،³
شو
ϳ
¾فا
º»
د
±
ا
ÎÁ ¼ µº» ·
س
±
و
Á
ر کد
³ ·äÂõ
کار بسیار
á¼
صورت ر
.³»³ Ù
هی
»
و
à ð
¸وضی
»
¿ ر
¹È
ها´ م
µ
ز حال
» Úκ ¿±»
زبان
³²
کارک
ES6
ر
³ ¿±» ²
ب
ϼÍ
هد شد. ع
»
و
à Û
وم· ¸اب
È
ع
ðäº
ر
³ ²
م¾÷ی
ê±²Õ¸ î
باع
var
ید´
Â
¶ ک
ÈÂ
ک
¶ÈÂ
ک
ë±²
ز ط
»
¿ کار
±» .³²
ک
ê±²Õ¸ )
block
(
ها
Ø
و
Â
ب
ðäº
ان
È
´ ه
»²
ا ب
Ôɸ »
ها ر
²
ن م¾÷ی
»
م· ¸و
.³
م· شو
Ö
ا
ßÁ»
let
ید´
Â
ک
function
run
() {
var
globalScope =
“globalScope”
;
{
var
_withVar =
‘
_withVar’;
let
_withLet =
‘
_withLet’;
}
console.log(globalScope + ‘ printed!’);
console.log(_withVar + ‘ printed!’);
console.log(_withLet + ‘ printed!’);
}
foo();
//
globalScope printed!
//
_withVar printed!
// ±eFerenceError: _withLet is not defined
ا
Ôɸ ¿±»²
اب
É
، ب
µº» Ï
شد
ê±²Õ¸
let
ز
» ϳ
¾فا
º»
¼ با
Û
ز ¸اب
» ·Âû³
scpoe
Ú±
ر
³
_withLet
²
م¾÷ی
ر
³
ز آن
» ϳ
¾فا
º» Ö
ا
ÌÉ
ر ه
³ Æ
لی
³ ¿
ی
È
¼ ب¶ ه
Ù
ز آن هس¾ی
» ϳ
¾فا
º» ¶
از ب
ß
بوط¶ م
²
م
Ø
و
Â
ب
ÆÃ»³
ر
³
ک¶
µ
هس
_withVar
²
م¾÷ی
³
ر مور
³ é
¾¶ جال
¹Á .Ù±»Ï
ج¶ شد
»
ا مو
äÃ
با
²æÁ³
مور
ϳ¼
د
Þ
ز م
» Ò
ار
Ã
57
¹·
خ´ س
µ
================================================
FILE: HTML/6.html
================================================
function
showUserAge
(age) {
console
.log(age);
}
function
formatUserAge
() {
return
userAge +
“ days”
;
}
var
userAge =
28
;
showUserAge
(userAge);
// “28”
userAge =
formatUserAge
();
console
.log( userAge );
// “10220 days”
د.
É
م·ک
µÓ
ا
±
ر
³ ´³¼
ن ¼ر
»
و
É
ب¶ ع
»
ر
age
Ö
ا
Á ¶
ب
²¾
م
»
ار
Å Ú±
showUserAge
Û
¸اب
ø
و
Ó Ñ
ر مثا
³
ϳ
¾فا
º»
ان
¹
م
»
ً
ا
ÈÂ
د. مس
Á»³²
¼ج· بازم·گ
²Ã
ن
»
و
É
ب¶ ع
»
ر´ ر
»
د
Ý
م
formatUserAge
Û
ی¿ ¸اب
ÉãÈ
ه
.µº» ²±
ذ
Å
ان
¹
م
» Û
¸اب
Ú±
ر
³ ³
¼ مور
³ ²
ز ه
»
·Á»
و
û²Ó
¿ بار
±
د
É
چ
槯
ر
»²
د ک¶ ق
Á²
ر م·گی
»²
ق
ϳ
¾فا
º» ³
· مور
±
¶ کدها
Õä
´ ق
»²
ب
éÂõ» Û
ب
»
¸و
،Û
ب
»
¸و
²Ì±³
¼ مفید
²â
ها´ مو
³²
¶ کارب
ÂÈ
ز ج
» .µº
ر کدها
»²¹¸
ز
» ´²
وگی
Â
ج
ò
¿ با هد
±» ¼
د
Á
شو
ا
Ôɸ µº» ¿¹È
د ک¶ م
É
چ
²
د، ه
ɾ
هس
Ù
بس¾¶ ب¶ ه
»¼ ¶
ک
µº» ·±
¶ کدها
Õä
ق
ÙæÉ
ه· م
³
ازمان
º
د:
Á
· شو
Á»
و
û²Ó
ار
ι±
const
MONEY_PROFIT =
0.20
;
/**
* To calculate profit added to money at bank
*/
function
calculateProfit
(
money
) {
// calculate the new money amount with the profit
money = money + (money * MONEY_PROFIT);
// return the new amount
return
money;
}
var newMoney = calculateProfit
(20000000);
console
.log(newMoney); // 24000000
ز
» ϳ
¾فا
º»
ما
» µº» Ï
· شد
Á»
و
û²Ó
ار
ι±
ا
Ôɸ calculateProfit Û
د ک¶ ¸اب
É
چ
²
ه
ø
و
Ó Ñ
ر مثا
³
65
¹¾²À
خ´ چ
µ
================================================
FILE: HTML/68.html
================================================
ر
³ ¶
هد ک
³·
م
µÎ
س
Á
features
¶±»
ب¶ آر
»
ر
Ë
ا
à ´
ژگ·ها
±¼ ´²
س
¹± þ²Ó Ä
ی
Å
ب¶ صورت
íÍ
ک
Ù
ی
É
ک
³
ا
ß±» íÍ
¿ ک
±»
ز
» ¶Á
و
ÈÁ ¼³ ²
گ
» .
باشد
ϳ
¾فا
º» ¼ ·º²¾º³ Æ
ی× قاب
Á Ï
¾¶ شد
Ã
ا
º
شیاء
» Ö
ا
ȸ
هد:
³·
م
ý
· ر
Î
ی
ß
¶ ع
ß
¾ی
Á ،Ù
ی
É
¶ ک
Ó
ضا
» ²Ì±³
feature
Ú±
ز آنها
» ·¹± ¶
¼ ب
// instance of House
var
myHouse =
new
House(
60
);
var
hisHouse =
new
House(
85
);
// add new feature to one
myHouse.features.push(
“parket”
);
myHouse.features;
// [“pool” , “roof garden” , “parket”]
// read features on another one
hisHouse.features;
// [“pool” , “roof garden” , “parket”] ?!
// remove feature of another one
hisHouse.features.splice(
1
);
hisHouse.features;
// [“roof garden” , “parket”]
myHouse.features;
// [“roof garden” , “parket”] ?!
óÝÓ
¶ ما
¹
ر حالی
³ ،
د
Á»Ï
شد
parket
ن
»
و
É
با ع
feature
s ´»
ر
»³
object
¼³ ²
ک¶ ه
Ù
ی
É
م·ک
Ï
اهد
Ð
م
؟
µº
ا
ß
ز ک
» ƹÐ
ید م
Á×
ب
í
ید حد
Á»
. م·¸و
Ù±³²
¶ ک
Ó
ضا
» »
ژگ· ر
±¼ ¿±»
myHouse
ب¶
íÍ
· ک
ÉÕ± ،·Â
ص
» ìÁ²Ó
ر
features
ژگ·
±¼
ز
»
object
¼³ ²
ه
ز¾Ð
م
ϳ
¾فا
º» Æ
لی
³ ¶
ب
ƹÐ
¿ م
±»
ا
±
دن
Á»
و
à ´»²
¾· ب
º»
و
Ã
ر
³ ،
object
²
ر¼´ ه
²
· ک¶ ب
Á
زما
µ
پ
±²¹º»¼
ر جا
³ .
هد
³·
م
ý
ر
House
ر¼´
²
¾· ب
º»
و
Ã
ر
³
ا م¾د
± ·
ژگ
±¼ Ñ
ا
ÎÁ³ ¶
ب
µ
پ
±²¹º»¼
، مو¸ور جا
³
¶ م·شو
Ç»
ر
»
ا م¾د
± ·
ژگ
±¼ ¿¾
وش
Á
آن
Ñ
ا
ÎÁ³ ¶
لد ب
»¼
ان
È
ب¶ ه
dunder proto
4
ر
³ ،
دن آن
ÐÁ µÓ
ا
±
ر صورت
³ ¼ ³³²
· م·گ
ÂÕÓ
object
د.
É
م·ک
»
ید
Å ¶
م
»³»
د
º²
ال· ب
Ã
لد
»¼ ¶
· ک¶ ب
Á
¿ ¸ا زما
±» Ö
ا
ßÁ» ¼ ³³²
م·گ
ب¶
»
، آن ر
constructor
ر
³
features
ژگ·
±¼
ن
³²
ک
ê±²Õ¸ ´
ی×، چون ما ب¶ جا
Á Ä
¿ بخ
±»
ر
³
·Â
ص
» ìÁ²Ó
ز ر
» ،³
و
à À¾
مخ
features
ش¾¿
»³ ´
ب¶ جا
object
²
! ه
Ù±»Ï³»³ ¶Ç»
ر
»
prototype
:³
م·شو
ð
ی
Þภ²±
ز
ƹ
ب¶ ش
ø
و
Ó
کد
ìÅ .
هد
³·
ر م
»²
ق
ϳ
¾فا
º» ³
مور
»
ر
features
4 __proto__
76
²À¸
آ
³¸
¾ د¾و
²Á²
و س
õ
·ا
Ä
================================================
FILE: HTML/79.html
================================================
Á
Ú±
ز
» ϳ
¾فا
º»
¶ با
±»
آر
²
اص
É
بی¿ ع
Ñ
ا
฻ ³
ا
ß±» ¼ ¶¾
¶ ب¶ رش
±»
آر
Ʊ
د
θ ´»²
ب
:
join
تد
³
:Ñ
´ مثا
»²
، ب
³
م·شو
ϳ
¾فا
º»
¿ م¾د
±»
ز
» Ï
د
ÉÉ
ک
»
جد
[
“ali”
,
“reza”
,
“mohammad”
].join(
“_”
);
// “ali_reza_mohammad
Á
آن
ò
ز حذ
» ìÅ ·¾
¼ ح
ϳ²
ک
ò
حذ
»
ر
²àÉ
ع
m
د
Á»
م·¸و
n
ì±
د
Á»
ز
»
¿ م¾د
±»
:
splice
تد
³
ک¶
³
. ¸وج¶ شو
)µº» ´
¾یار
û ³
¿ مور
±»(
د
É
¿ ک
±×̱
ب¶ جا´ آنها جا
»
د´ ر
±
جد
²±³
ا
Ý
م
²
اص
É
ع
:Ñ
د. مثا
ɾ
¶ هس
±»
ز آر
» Ï
شد
ò
حذ
²
اص
É
¿ م¾د، ع
±» ·¾Ð
ر بازگ
»
د
Ý
م
var
array = [
1
,
2
,
3
,
4
,
5
,
6
];
array.splice(
1
,
2
,
“newOne”
,
“newTwo”
);
// returns [2,3]
console
.log(array);
// [1, “newOne”, “newTwo”, 4, 5, 6]
µÓ
ا
±
ر
³
¿ م¾د با
±» .
هد
³·
¶ م
Ç»
ر
»
splice
م¾د
³²¹ÂÈ
ع
Ï
و
ÞÁ Ï
ربار
³ ¶¾¹Á ¿±
د
É
، چ
ø
و
Ó Ï³
ا
º Ñ
مثا
د
Á»
، م·¸و
Ö¼³ ²¾
م
»
ار
Å
ن
»
و
É
ب¶ ع
)2(²æÁ ³
مور
²
اص
É
ع
³»
د
Õ¸ ¼ Ѽ» ²¾
م
»
ار
Å
ن
»
و
É
ب¶ ع
)1(ç¼²
ش
ì±
د
Á»
¿±» ²Ì±³ ·
ژگ
±¼
ز
»
ما
ø
و
Ó Ñ
ر مثا
³
ما
» ،
د
É
ک
ò
حذ
²æÁ
¶ مد
±»
ز آر
» »
ر
3 ¼ 2 ²àÉ
¼ ع
³ ƹÐ
بد¼ن م
د´ ب¶ جا´
±
جد
²
اص
É
، ع
²æÁ ³
مور
²
اص
É
شدن ع
ò
با حذ
Ù
هی
»
و
÷
¼ م
Ù±»Ï³²
ک
ϳ
¾فا
º» ×
ی
Á
م¾د
ب¶
array
¶±»
آر
²
¸÷یی
»²
ج
» ¶ß
¾ی
Á ¼ Ù±» ϳ»³ í
ا
Å
ب¶ م¾د
»
د ر
±
جد
²¾
م
»
ار
Å ¼³ ìÅ ،Ù
ی
É
ک
Ò
ر
³
آنها
ما م·باشد.
²æÁ ³
مور
ƹ
ش
:µº» ²±
ز
ƹ
ب¶ ش
splice
· م¾د
Â
¾ار ک
Ã
ا
º
array.splice(index, howmany, item1,
.....
, itemX)
Á
´»²
د ب
Á»
م·باشد، م·¸و
»²
ج
» ¼ í²¾º³ Æ
´ قاب
»¶±»
آر
²
ر¼´ ه
²
¿ م¾د ک¶ ب
±»
:
forEach
تد
³
:Ñ
´ مثا
»²
د، ب
É
¸ان ک
ÚÈ
¶ ک
±»
آر
²
اص
É
ع
Ú¸ Ú¸ ´¼
ر
²
ن ب
³
¶ ز
ÝÂ
ح
var
array = [
1
,
2
,
3
,
4
,
5
,
6
];
array.forEach(
function
(
item
) {
console
.log(item);
// output: 1 2 3 4 5 6
});
84
²º
ه
±
ه آ¾ا
Á
رف
ÅÆ
حث پ
²
مب
================================================
FILE: HTML/87.html
================================================
Á
ϳ
¾فا
º» ³
¶ مور
±»
ر آر
³ ´²àÉ
ن ع
³
بو
³
· موجو
º
ر
²
´ ب
»²
د ب
Á»
¿ م¾د م·¸و
±»
:
includes
تد
³
¶ß
¾ی
Á ¼ ·º
ر
²
ب
²æÁ ³
¶ مور
±»
ر¼´ آر
²
ب
»
ن آن ر
³
بو
³
، موجو
²æÁ ³
´ مور
³¼
¼ر
µÓ
ا
±
ر
³
¼ با
³²
ر گی
»²
ق
:Ñ
´ مثا
»²
د. ب
Á»³²
م·گ
²
ب
false
ا
±
true
var
array = [
1
,
2
,
3
,
4
,
5
,
6
];
array.includes(
2
);
// output: true
array.includes(
7
);
// output: false
:³
و
ÈÁ ´
از
ºÏ³
یا
Å ²±
ب¶ صورت ز
indexOf
Û
ز ¸اب
» ϳ
¾فا
º»
با
»
¿ م¾د ر
±» ѳ
ا
Õ
ن م
»
¾¶ م·¸و
Î
ل
»
var
array = [
1
,
2
,
3
,
4
,
5
,
6
];
(array.indexOf(
2
) >
-1
);
// output: true
(array.indexOf(
7
) >
-1
);
// output: false
ن آن
³
بو
³
ا´ موجو
ÉÕ
ب¶ م
³
بو
-1
ز
» ²¾
ب×رگ
²
گ
» ،²æÁ ³
مور
²àÉ
ع
³»
د
Ã
ر
ÆÞ
· م
º
ر
²
با ب
ƹ
¿ ش
±» ¶
ب
:µº» ²±
ز
ƹ
ب¶ ش
includes
· م¾د
Â
¾ار ک
Ã
ا
º .
م·باشد
²æÁ ³
¶ مور
±»
ر¼´ آر
²
ب
array.includes(element, fromIndex)
fromIndex
Ö¼³ ²¾
م
»
ار
Å ·
ه
³
ر
»
د
Ý
ن با م
»
¿ م¾د م·¸و
±»
ر
³ ،³
م·شو
Ï
اهد
Ð
م
ø
و
Ó ¶Á
و
ÈÁ ¶
ور ک
äÁ
ا
È
ه
.³»³ Ö
ا
ßÁ»
د
Õ
ب¶ ب
ì
دک
ɱ»
ز آن
» ،»
¶ ر
±»
ر¼´ آر
²
ب
²æÁ³
ر مور
»
د
Ý
ن م
³
بو
³
´ موجو
»²
و ب
ß¾
جس
Á
³
ا
ß±» »
د´ ر
±
¶ جد
±»
، آر
²¾
م
»
ار
Å
ن
»
و
É
ب¶ ع
Ï
¶ شد
Ç»
ر
» ó±»²
· ش
º
ر
²
¿ م¾د با ب
±»
:filter
تد
³
:Ñ
´ مثا
»²
د، ب
Á
¶ م·شو
Ç»
ر
»
ب¶ م¾د
Û
¸اب
é
ر قال
³ ó±»²
د. ش
É
م·ک
var
array = [
1
,
2
,
3
,
4
,
5
,
6
];
// just larger than 3
var
filteredArray = array.filter(Function(
number)
{
return number >
3;
});
console
.log(filteredArray);
// output: [4, 5, 6]
console
.log(array);
// output: [1, 2, 3, 4, 5, 6]
85
Í×
پن
ØÉ³
================================================
FILE: HTML/88.html
================================================
،µº» Ï
د
Á
¼لی¶ باق· ما
» ´
ها
ϳ»³
¼ با
²
بد¼ن ¸÷یی
array
Ö
ا
Á
¼لی¶ با
» ¶±»
ک¶ آر
Ù
ی
É
م·ک
Ï
اهد
Ð
م
¶±»
ز آر
» 3
ز
» ²¾
ب×رگ
²±³
ا
Ý
´ م
»
ر
»³
ا
Ôɸ ¶
، ک
Ï
شد
³
ا
ß±»
filteredArray Ö
ا
Á ¶
د´ ب
±
¶ جد
±»
¶ آر
¹
رحالی
³
· م·باشد.
Â
ص
»
ر
³ ³
موجو
³»
عد
» ´¼
ر
²
م·باشد ک¶ ب
²¾Â
ی
Ó Ê²
ش
Ö
ا
ßÁ» ´»²
ب
Ï
¶ شد
Ç»
ر
» Û
، ¸اب
filter
· م¾د
Â
ص
» ¶¾¹Á
ا´
ÉÕ
ب¶ م
true
ر
»
د
Ý
د. م
Á»³²
م·گ
²
ب
false
ا
±
true
ن آن
³
بو
3
ز
» ²¾
· ب×رگ
º
ر
²
¼ با ب
Ï
ر شد
»²¹¸ ¶±»
آر
م·باشد.
Ï
شد
²¾Â
ی
Ó ¶±»
دن ب¶ آر
ÐÁ ¶Ó
ضا
» ´
ا
ÉÕ
ب¶ م
false
¶ شدن ¼
Ó
ضا
»
:³
هد بو
»
و
à ²
ب
»²
¼ کد ب
³ ²
¼ج· ه
²Ã ¼
م·باشد
²±
کد ز
Ï
شد
Ï
کو¸ا
ø
و
Ó
کد
µÝ
ی
Ý
ر ح
³
// just larger than 3
var
filteredArray = array.filter(
function
(
number
){
if
(number >
3
){
return
true
;
}
else
{
return
false
;
}
});
console
.log(filteredArray);
// output: [4, 5, 6]
Á
Ñ
´ مثا
»²
د، ب
É
م·ک
³
ا
ß±»
د
±
´ جد
»¶±»
¶، آر
±»
آر
²
اص
É
ر¼´ ع
²
ن ب
³
¶ ز
ÝÂ
¿ م¾د با ح
±»
:
map
تد
³
د:
Á»Ï
شد
²
ب
»²
¼ ب
³
آن
²
اص
É
ع
Ö
ا
ȸ ¶
ک
Ù
ی
É
ک
³
ا
ß±» ³
و
à ¶±»
ز ر¼´ آر
»
د
±
¶ جد
±»
آر
Ú± Ù
ی
Á»
م·¸و
var
array = [
1
,
2
,
3
,
4
,
5
,
6
];
var
doubledArray = array.map(
function
(
number
){
return
num *
2
;
});
console
.log(doubledArray);
// output [2, 4, 6, 8, 10, 12]
console
.log(array);
// output: [1, 2, 3, 4, 5, 6]
false
ا
±
true
Û
¿ ¸اب
±» ،
د
±²
ی
ÌÁ Ï
ا
ξ
ش
» filter
با م¾د
Ï
¶ شد
Ç»
ر
» Û
با ¸اب
»
¿ م¾د، ر
±»
با
Ï
¶ شد
Ç»
ر
» Û
¸اب
»
ر
Ù
ش¾¶ باشی
»³ Ù
هی
»
و
÷
¶ م
±»
ز آر
» ²æÁ ³
مور
ì±
د
Á»
ر
³ ¶
د´ ک
±
ر جد
»
د
Ý
¶ م
¹Â
د، ب
Á»³²
·گ
ÈÁ
باز
²
اص
É
ن ع
³²
ک
map
·ÉÕ± ،
د
Ð
م·ک
á¼³ ²
ب
Û
ن ¸اب
»
و
É
ان مسئولی¾· ک¶ ع
È
ه
Û
ق
»¼
ر
³ ¼
د
É
بیان م·ک
هد.
³·
م
Ö
ا
ßÁ» »
¶ ر
±»
آر
86
²º
ه
±
ه آ¾ا
Á
رف
ÅÆ
حث پ
²
مب
================================================
FILE: HTML/89.html
================================================
بخش اول
[
ت و مباحث پایه
±
سکری
²
ا جاو
³ ´
آشنای
20
.....................................................................................
¶؟
˽
چ
Javascript
20
..........................................................................................
¶؟
̱²Í
´س
À
´ جا
²
چ
21
...................................................................................................
)Á
ام
º²
ب
( ¹
ک
21
..................................................................................
)
Statements
( Ê´
دس¸ور
22
...................................................................................
)Expressions
( Ê´
ار
Ç¿
22
.................................................................................................
Á
ام
º²
´¾ ب
²
´ج
23
...............................................................................................
Á
ام
º²
جی ب
À²É
24
.................................................................................................
Á
ام
º²
د¾ ب
À
ر
À
24
...............................................................................
)Editors
( ¹
ا¾ ک
ȲÎϱ´²±À
25
.....................................................................................
)
Operators
(
ا
ȲÎл¿
26
......................................................................................
)Comment
( ¶Ñ
کام
26
........................................................................................
¶گذ´ر¾
Ñ
کام
¹¿´
و
Ò
27
....................................................................................
طی
É Ó
¶گذ´ر¾ ت
Ñ
کام
27
....................................................................................
طی
É ¹Ñ
¶گذ´ر¾ چ
Ñ
کام
28
..........................................................................
)
Blocks
( ¹
ک
Ê
طعا
Ò
ا
±
ا
ÈÔ
و
Ð
ب
28
........................................................
ÃÀ Ê
ا
Õ
¶ در صف
̱²Í
´س
À
ا¾ جا
ȹ
¾ ک
²½
´رگ
²Ò
بخش دوم
[
µ
د
²
ع د
²¶·²
مقادیر و
32
....................................................................................................
د´ده
Ö´
و
º´
32
.....................................................................................
)Variables
(
ا
Ȳ½
م¸غ
34
................................................................................
²Î±¹Í± Á
د´ده ب
Ö´
و
º´ ×±¹Ç
ت
37
............................................................................................
)
Objects
(
´ش½اء
================================================
FILE: HTML/90.html
================================================
// all elements are less than 10
var
lessThanTen = array.every(function(
number){
return number <
10
});
console
.log(lessThanTen);
// output: true
Á
د
Á»
¼ م·¸و
³¼
¶ ب¶ کار م·ر
±»
آر
²
اص
É
ه· ب¶ ع
³ é
¸ی
²¸ ¼ ´
از
ºé¸²
´ م
»²
ب
sort
م¾د
:
sort
تد
³
:Ñ
ش¾¶ باشد. مثا
»³ ì¹
ع
²
ا ب
± ú
ب¶ ب×ر
Ú
از´ کوچ
ºé¸²
م
³²¹±¼
ر
var
alpha = [
‘e’
,
‘a’
,
‘c’
,
‘u’
,
‘y’
];
var ascOrder = alpha.sort();
console
.log(ascOrder);
// output: [‘a’, ‘c’, ‘e’, ‘u’, ‘y’]
از´، ب¶ صورت
ºé¸²
م
ʲ
ش
Ñ
ا
È
ع
»
ح¾· بد¼ن
sort
´، م¾د
»¶¾
رش
²
اص
É
ع
Æ
· شام
±
¶ها
±»
آر
³
ر مور
³
،Ù
ش¾¶ باشی
»³ ³»
عد
»
ز
» ´»¶±»
آر
²
گ
»
ما
» ،
هد
³·
م
Ö
ا
ßÁ» ´
از
ºé¸²
م
ÉŶ
ح
Ê
¶ ·سا
Ä
þ²ÓÄ
ی
Å
:Ñ
´ مثا
»²
، ب
Ù
هی
³ ¶Ç»
ر
» »
از´ ر
ºé¸²
م
ʲ
· ش
º
ر
²
´ ب
»²
ب
²æÁ ³
مور
Û
¸اب
µ
س
±
م·با
var
arr = [
1
,
2
,
3
,
4
,
5
,
6
];
// sort in descending order
var
descOrder = arr.sort(
function
(
a, b
){
return
(a > b) ?
-1
:
1
;
});
console
.log(descOrder);
// output: [6, 5, 4, 3, 2, 1]
ú
ر صورت ب×ر
³ ¼ ¶
س
±
ا
Ý
م
»
¶ ر
±»
ز آر
»
ر
»
د
Ý
¼ م
³ ،´
از
ºé¸²
م
ʲ
ش
Ï
د
ÉÉ
· ک
º
ر
²
ب
Û
¸اب
°
ر کد با
³
¶±»
×¼ل· آر
Á ´
از
ºé¸²
ب¶ م
²ßÉ
هد، ک¶ م
³·
م
µÐ
بازگ
1
ورت
àɱ» ²
ی
õ
ر
³ ¼ -1 ·
¼م
³
ز
» ·
¼ل
»
ن
³
بو
²¾¹
´ کوچ
³
عد
Ï
اهد
Ð
ر صورت م
³ ،´
از
ºé¸²
م
ʲ
ش
Ï
د
ÉÉ
· ک
º
ر
²
ب
Û
· ¸اب
Â
. ب¶ طور ک
³
م·شو
µÎ
ر صورت مث
³ ¼
هد
³·
م
Ñ
ا
ݾÁ» Ö¼³ ²¾
م
»
ار
Å
ز
» ²¸ÆÎ
ق
ì
دک
ɱ» Ú± ¶
ب
»
ر
Ѽ» ²¾
م
»
ار
Å ،²
ز صف
»
¿¾Ó²
گ
²æÁ
ر
³
. با
³
م·شو
ÆÝ¾É
م
Ö¼³ ²¾
م
»
ار
Å
ز
» ²¸°
با
ì
دک
ɱ» Ú± ¶
ب
Ѽ» ²¾
م
»
ار
Å ،¶ß
¾ی
Á
ن
³
بو
ø
و
Ó Ñ
´ مثا
»²
ب
Ï
وش¾¶ شد
Á ¶
س
±
ا
Ý
م
ʲ
ک¶ ش
µº» Ï
ید
º
ر
Ù
ا ه
È
ش
²¹Ó ¶
ب
°
ا
Ⱦ
ح
» ،ç
¿ موضو
±»
²
گ
»
م¾فا¼ت
ƹ
´ ب¶ ش
³
و
Õ
از´ ص
ºé¸²
´ م
»²
ب
²Ì±³ ·
ر مثال
³ )
¶؟
Á
و
Ì
چ
(.Ù
سی
±
و
É
ب
²¸Ï³
ا
º »
ر
:Ù
وش¾ی
Á·
م
»
ر
²±
کد ز
Ù
ی
É
ک
鸲
´ م
³
و
Õ
ص
ƹ
ب¶ ش
»
¶ ر
±»
¿ آر
±» Ù
¾ی
º»
و
÷
م
88
²º
ه
±
ه آ¾ا
Á
رف
ÅÆ
حث پ
²
مب
================================================
FILE: HTML/91.html
================================================