Javascript nail Mammadov



Yüklə 1,07 Mb.
Pdf görüntüsü
səhifə1/7
tarix06.06.2020
ölçüsü1,07 Mb.
#31757
  1   2   3   4   5   6   7
Javascript



 
Azerbaijan Javascript Developers Groups 
 
 
 
JAVASCRİPT 
Nail Mammadov 
 
 
 
 
 
 
2020 


 
Mündəricat 
1.  JavaScript-ə Giriş .................................................................... 3 
2.  Əlavələr və xüsusiyyətlər.........................................................9 
3.  Kod redaktorları......................................................................11 
4.  Console.log.............................................................................13 
5.  Salam, dünya!.........................................................................17 
6.  Kod strukturu.........................................................................21 
7.  Use strict................................................................................26 
8.  Dəyişənlər..............................................................................28 
9.  Data tipləri.............................................................................40 
10. Data tiplər arasında keçidlər...................................................49 
11. Operatorlar............................................................................55 
12.  Müqayisə operatorları...........................................................72 
13.  Dialoq pəncərəsi : Alert, Prompt, Confirm..............................80 
14. Şərt operatorları.....................................................................84 
15. Məntiq operatorları................................................................92 
16.  While və For..........................................................................104 
17. Swithch case………………………………………………..………………………116 
18. Funksiyalar………………………..…………………………………………………123 
19.  Ox funksiyaları……………….……………………………………………………140 
20. Xülasə………………………………………………………………………………….157 
 
 
 


 
1.  JavaScript-ə Giriş 
Bu  kitab  Azərbaycan  dilində  ən  sadə  yazılmış  Javascript  dərsliyidir.  Javascript 
haqqında  hər  şey  yəni,  onların  xüsusiyyəti,  nələr  edə  biləcəyimiz  və  hansı 
texnologiyaların istifadə edildiyinə baxacıq. 
JavaScript nədir? 
Javascript başlanğıcda veb səhifələrin interaktiv (canlı) etmək üçün istifadə edilir. 
Bu  dildə  fayl  tipinə  script  (əmr)  faylları  deyilir.  Veb  səhifədə  HTML  içərisinə 
Javascript yazıla bilər və səhifə yükləndikdə avtomatik olaraq işə düşəcəkdir. Script 
faylları işə salmaq üçün xüsusi format vəya compailer-ə ehtiyac yoxdur. 
Javascript Java adlanan dildən çox fərqlidir. 
Niyə Javascript? 
Javascript ilk əvvəllər başqa adla bilinirdi: “LiveScript”. Ancaq Java o vaxtlar çox 
məhşur idi. Bu səbəbdən yeni dili Javanın “kiçik qardaşı” kimi adlandırılmasına 
qərar verildi. Ancaq inkişaf etdikcə Javascript Ecmascript adlı müstəqil dil oldu və 
artıq Java ilə heç bir əlaqəsi yoxdur. Bu gün Javascript yalnız brauzerdə deyil 
həmdə serverdə vəya əslində Javascript engine adlanan framework (karkas) olan 
cihazda işləyə bilər. Brauzerdə bəzən “Javascript Virtual Machine” adlı xüsusiyyəti 
vardır. 
Enginlərin kod adları brauzlərə görə aşağıdakı kimidir.Məsələn: 
V8 - Chrome və Operada. 
SpiderMonkey - Firefoxda. 
“Trident” və “Chakra”- fərqli İE versiyalarda olur.  


 
“ChakraCore” - Microsoft Edge-da. 
“Nitro” və “SquirrelFish” – Safarida.  
Yuxarıdakı terminləri yadda saxlamaqda fayda vardır. Çünki developer və özümün 
məqalələr yazdığım medium hesabımda çox istifadə edilir. Məsələn “X xüsusiyyəti 
V8 tərəfindən dəstəklənir” isə ehtimal ki Chrome və Opera-dada işləyir. 
Enginlər necə işləyir? 
Enginlər qarışıqdır. Ancaq ilkin anlayışlar asandır. Enginlər (Brauzerdə olarsa) scripti 
oxuyur  (“ayırır”).  Sonra  scripti  maşın  dilinə  çevirir  (“hazırlayır”).  Və  sonda  maşın 
dilində  olan  kod  sürətli  işləməyə  başlayır.  Engine  prosesini  hər  addımında 
optimizasya işləri aparılır. Ayrılmış script işləyərkən belə onu izləyir,içərsində olan 
məlumatları  analiz  edir  və  məlumatlara  əsaslanaraq  maşın  dilindəki  kodu 
optimizasiya edər. Bu bitdiyində javascript sənədləri çox sürətli işləyirlər. 
Brauzer üçün Javascript nə edə bilər? 
Modern Javascript “güvənli” proqramlama dilidir.Yaddaş vəya CPU-ya görə zəif 
bağlantı qurmaz çünki başlanğıcda bu parametrlərin lazım olmadığı brauzerlər 
üçün nəzərdə tutulmuşdu. 
Javascriptin  bacarıqları  ən  çox  olduqları  mühitə  görə  dəyişir.  Məsələn  Node.js  – 
Javascriptin  istənilən  sənədləri  oxumasına/yazmasına,  şəbəkə  istəklərinin 
reallaşdırılmasına  və  s.  proseslərə  icazəni  dəstəkləyir.  Brauzer  içərisindəki 
Javascript veb səhifə manipulyasiyası,istifadəçi əlaqəsi və veb server ilə əlaqəli hər 
şey edilə bilir. 
 


 
Məsələn Javascript brauzer içərisində bunları edə bilər: 
Səhifəyə yeni HTML əlavə etmək, mövcud məlumatların dəyişdirilməsi, formatını 
dəyişdirmək.  
İstifadəçilərin  apardığı  əməliyyatalara  reaksiyası.  Mausun  kliklənməsi  ilə,  ox 
işarələri, qutuların kliklənməsi və s. 
Şəbəkə  ilə  başqa  serverlərə  istək  göndərilməsi,  sənədlərin  göndərilməsi  və 
yüklənməsi ( AJAX və COMET texnologiyaları). 
Cookie-lərin  hazırlanması  ilə  istifadəçilərə  sualların  verilməsi,  mesajların 
göstərilməsi və s. 
Müştərinin məlumatlarının yaddaşda saxlanması ( “local storage” ). 
 
Javascriptlə brauzerdə nələr etmək olmaz? 
Javascriptin brauzerdəki bacarıqları, istifadəçinin güvənlilik tərəfindən məhduddur. 
Məqsəd  istifadəçinin  məlumatlarının  alınmasının  vəya  oğurlanmasının  qarşısının 
alınmasıdır. 
Bu hallara aid nümunələr: 
Veb səhifəsindəki JavaScript sabit diskdə özbaşına sənədləri oxumağa / yazmağa, 
onları  nüsxəsini  çıxatmağa  və  ya  proqramları    işə  sala  bilməz.  OS  sisteminin 
funksiyalarına birbaşa çıxışı yoxdur.  
Müasir  brauzerlərdə  sənədləri  oxumağa  icazə  verilir.  Ancaq  məhdud  və  yalnız 
istifadəçi  sənədi  brauzer  pəncərəsinə  “buraxmaq”  vəya    teqi  ilə  seçərək 
istifadə edə bilər. 


 
Kamera/mikrofon  və  digər  cihazlarla  əlaqəni  yaratmağın  yolları  vardır.  Ancaq 
bunlar üçündə istifadəçinin icazəsi lazımdır. Bu səbəblə Javascript veb səhifədə veb 
kameranı gizlicə işə salıb və məlumatları göndərə bilməz. 
Fərqli tablarda/ pəncərələrdə ümumiyyətlə bir-birini görmür. Bəzən bir pəncərənin 
digərini açmaq üçün Javascript istifadə edildiyi zaman edilir. Ancaq bu halda belə 
səhifədəki Javascript fərqli səhifələrdən gəlirsə, digərindən istifadə edə bilinmir. 
Buna  “Same  Origin  Policy”  deyilir.  Bunun  həll  yolu  hər  iki  səhifə  arasında  razılıq 
olmalıdır  və  onun  üçün  isə  xüsusi  Javascript  kodu  yazılmalıdır.  Bunu  sonrakı 
mövzularda ətraflı izah ediləcəkdir. 
Bu  məhdudiyyətlə  istifadəçinin  güvənliyi  üçündür.  İstifadəçinin  açdığı 
http://hərhansı.com  ünvanından  olan  səhifə 
http://gmail.com
  URL-si  olan  başqa 
pəncərədən məlumat oğurlamağa imkan vermir. 
Javascript  şəbəkədən  öz  səhifəsinin  olduğu  server-ə  rahatlıqla  əlaqə  qura  bilər. 
Ancaq digər səhifələrdən məlumat alma xüsusiyyəti yoxdur. Javascript brauzerdən 
kənarda  məsələn  serverdə  istifadə  edilirsə,  bu  məhdudiyyətlər  olmayacaqdır. 
Müasir brauzerlər geniş icazə tələb edilməyəcək əlavələrə icazə verir. 
 
Javascripti oxşarsız edən nədir? 
JavaScripti oxşarsız edən 3 səbəb vardır: 
HTML / CSS ilə tam bağlıdır. 
Sadə şeylər çox asanlıqla həll olunur. 
Bütün brauzerlər tərəfindən dəstləklənir və hal-hazırda istifadə olunur. 


 
Javascript 3-nüdə birləşdirən tək brauzer texnologiyasıdır. 
Javascriptidə oxşarsız edən budur. Brauzerlər üçün ən çox istifadə edilən yol budur. 
Yeni  texnologiyanı  öyrənməyi  planlaşdırdıqda  baxış  bucağınıza  nəzarət  etməklə 
daha faydalı ola bilər. Əgər bu sizdə belədirsə, müasir trendlərə keçid etmək olar. 
JavaScript üzərindən dillər 
Javascript sintaksisi bütün ehtiyacları ödəmir. Hər bir insan üçün fərqli xüsusiyyətin 
olmasını istəyər.Bu hal proyektlərin və istənilənin hər kəs üçün fərqli olması idi. 
Bu səbəblə son zamanlarda Javascriptdə sintaksisində modifikasiya edərək yeni dil 
ortaya çıxarır. 
Müasir alətlərdə çox sürətli və avtomatik olaraq çevrilmələrin aparılmasına imkan 
yaradır. 
Ən çox istifadə edilənlər: 
CoffeeScript  –  Javascript  üçün  “sugar  sintaksis”  dir.Daha  qısa  və  dəqiq  kod 
yazmağımıza  icazə  verən  sintaksis  imkanını  verir.Ümumilikdə  developerlər  bunu 
Ruby-də də bəyənirlər.  
TypeScript  –  qarışıq  sistemlərin  yazılması  və  hazırlanmasını  rahatlaşdırmaq  üçün 
yəni,  “strict”  məlumatların  əlavə  etməyə  imkan  verir.Mikrosfot  üçün 
hazırlanmışdır. 
Flow - başqa data tipləri yazmağa imkan verir. Facebook tərəfindən hazırlanmışdır. 
Dart - brauzerdən kənarda (mobil proqramlarda) işləyə bilən öz engininə sahib olan 
ancaq eyni zamanda Javascriptdə müstəqil dildir. Google tərəfindən hazırlanmışdır. 
Daha çox var. Təbii ki bunlardan əvvəl Javascripti bilməliyik. 


 
Nəticə 
Javascript başlanğıcda yalnız brauzer dili olaraq yaradıldı. Ancaq indi bir çox başqa 
məqsədlər üçün istifadə edilir.İndiki vaxtda Javascript HTML/CSS ilə tam bağlı olan 
ən məhşur brauzer dilidir.Javascriptdə “transpiled” və müəyyən xüsusiyyəti verən 
bir çox dil var. Javascripti anladıqdan sonra ən azında qısa şəkildə onlara baxmağınız 
məsləhətdir. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 


 
2. Əlavələr və xüsusiyyətlər 
Bu kitabı 0-dan başlıyan tələbələrin Javascripti mənimsəməsidir. Kitab sadə, başa 
düşülən və anlaşılan dillə yazılmışdır. Ancaq ilkin bilikləri öyrədikdən sonra başqa 
mənbələrə ehtiyacınız olacaqdır. 
Spesifikasiya 
ECMA-262 spesifikasiyası – Javascript ilə bağlı ən dərin, izahlı və rəsmi məlumatları 
özündə saxlayır. Dili 0-dan izah edir. Ancaq burada yazılanlar rəsmi şəkildə yazıldığı 
üçün  anlamaqda  çətinlik  çəkə  bilərsiniz.  Bir  sözlə,  Javascipt  haqqında  hər 
məlumatları xırda detallarına qədər bu kitabdan tapa bilərsiniz. 
Ən son versiya bu linkdədir: 
https://tc39.es/ecma262/
 
 
Faydalı  
MDN (Mozilla) Javascript-də haqqında məlumat, nümunələr və digər məlumatlar 
vardır. Dərinləməsinə öyrənmək üçün əla bir yerdir. 
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference  
Yenədə bunun yerinə internet axtarış etmək daha yaxşısıdır. Sorğuda sadəcə 
“MDN 
[termin]"
  istifadə  edin.  Məsələn  parseİnt  metodunu  axtarmaq  üçün 
https://google.com/search?q=MDN+parseInt. 
 
MSDN-  Javascript  (  çox  zaman  Jscript  olara  bilinir)  daxil  olan  məlumat  bazasıdır. 
İnternet Explorer üçün axtarırsınızsa “RegExp MSDN” vəya “RegExp MSDN jscript” 
kimi ifadələr yazaraq tapa bilərsiniz. 

10 
 
Yenilik dəstəyi 
Javascript inkişaf etməkdə olan dildir. Yeni xüsusiyyətlər davamlı olaraq əlavə edilir. 
Brauzerlər arasında dəstəklənməlirini görmək üçün baxın :  
xüsusiyyətin dəstəklənmə cədvəli
 
-
 http://caniuse.com
 
Hansı  brauzerlərin  müasir  şifrələmə  metodlarını  dəstəklədiyini  görmək  üçün- 
http://caniuse.com/#feat=cryptography.
 
Dil xüsusiyyətinin və bunları dəstəkləyən vəya dəstəkləməyən brauzerlərin cədvəli 

https://kangax.github.io/compat-table
 
Bütün bunlar sizin ehtiyacınız olacaqdır. 
 
 
 
 
 
 
 
 
 
 
 

11 
 
3.  Kod redaktorları 
Kod  redaktoru  developerlərin  vaxtlarının  çoxunu  sərf  etdiyi  yerdir.  Kod 
redaktorlarının iki  əsas növü var: IDE və sadə redaktorlar.  Developerlərin hər bir 
növdən fərqli məqsədlər üçün istifadə edirlər. 
IDE 
IDE  (Integrated  Development  Environment)  termini  adətən  bir  "bütün  layihədə" 
fəaliyyət  göstərən  bir  çox  xüsusiyyətləri  olan  güclü  bir  redaktordur.  Adından 
göründüyü  kimi,  bu,  yalnız  bir  redaktor  deyil,  tam  miqyaslı  "Development 
Environment". 
IDE layihəni yükləyir (bir çox fayl ola bilər), fayllar arasında naviqasiya təmin edir, 
bütün layihəyə əsasən avtomatik tamamlamağa təmin edir (yalnız açıq fayl) və bir 
versiya  idarəetmə  sistemi  (git  kimi),  test  mühiti  və  digər  "layihə  səviyyəsində" 
istifadə edilir. 
Hələ İDE seçməyibsinizsə, aşağıdakıları nəzərdən keçirə bilərsiniz: 
Visual Studio Code
 (cross-platform, pulsuz). 
WebStorm
 (cross-platform, pullu). 
Windows  üçün  "Visual  Studio  Kod"  ilə  “Visual  Studio”  qarışdırmamaq  lazımdır. 
“Visual Studio” ödənişli və güclü redaktorudur. Visual Studio Community-in pulsuz 
versiyası da var. Javascript üçün yaxşıdır. Bir çox IDE ödənişlidir, lakin sınaq müddəti 
var.  
 
Sadə redaktorlar 

12 
 
"Sadə redaktorlar" IDE-lər kimi güclü deyil, lakin onlar sürətli və sadədirlər. Onlar 
əsasən bir fayl açmaq və redaktə etmək üçün istifadə olunur. "Sadə redaktoru" və 
"IDE"  arasındakı  əsas  fərq,  IDE  layihənin  həcminə  görə  seçilməlidir.  Yüngül  işlər 
üçün isə “sadə redaktor” – lardan istifadə edilir. Sadə redaktorlarda analizatorlar və 
avtomatik tamamlama əlavələri olduğundan çox istifadəyə yararlıdır. 
 
 
Aşağıdakılardan birini seçə bilərsiniz: 
Atom
 (cross-platform, pulsuz). 
Sublime Text 
(cross-platform, shareware). 
Notepad ++
 (Windows, pulsuz). 
Vim və Emacs
-dan da istifadə edə bilərsiniz.  
 
 
 
 
 
 
 
 

13 
 
4.  Console.log 
Yazdığınız koddakı səhvlərin izahı üçün isitfadə edilir. Çox böyük ehtimal ki, səhvlər 
edəcik.  Bu  normal  haldır.  Ancaq  brauzerdə  istifadəçilər  xətaları  görmürlər.  Bu 
səbəbdən  scriptdə  səhv  olduqda,  nəyin  işləməyə  mane  olduğunu  və  bunu  necə 
düzəltməyin yolunu bilmək üçün birinci növbədə səhvi görməliyik. Xətaları görmək 
üçün və script haqqında məlumat almaq üçün brauzerlərə “Developer Tools” əlavə 
olunmuşdur. Developerlər Chrome və ya FireFox-dan istifadə edilir.Çünki ən yaxşı 
“Developer Tools”-a sahibdirlər. Amma bəzi brauzerlərdə xüsusi “Developer Tools”-
a sahib ola bilər.Ancaq ümumilikdə bunların hamısı “Chrome” və ya “FireFox”-da 
olacaqdır. 
Başlamaq üçün xətalara baxıb Javascript scriptlərinin necə işlətməyi öyrənəcik. 
 
Google Chrome 
index.html
 sənədi yaradın.  
Sənədin içərisində script daxilində let lalala; yazın və brauzerdə işə salın. Javascript 
kodunda xəta  var.  İstifadəçilər  tərəfində gizlədilmişdir.  Bu  səbəbləri  onu  görmək 
üçün “Developer Tools” açmalıyıq. 
Mac istifadə edirsinizsə Cmd+Opt+J – a eyni anda basın. 
Developers Tools consol bölməsində açılacaqdır. 
Buna bənzəyəcəkdir: 

14 
 
 
Developer  Tools  tam  görüntüsü  Chrome-un versiyasına bağlıdır.  Zaman  keçdikcə 
yenilənir. Burada qırmızı rəngli xəta mesajıdır. Bu halda script faylınızda bilinməyən 
“ilk” əmri vardır. 
Sağ tərəfdə xətanın olduğu sətir nömrəsi göstərilmişdir. 
index.html:12 klikləyib baxa bilərsiniz. 
Xəta mesajının altında mavi rəngi > simvol vardır. 
Javascript kodlarını yaza biləyimiz “kod sətri”-ni işarələyir. Onları işə salmaq üçün 
enter basın (Çox sətirlik kod yazmaq üçün shift+enter-i basın ). 
İndi xətaları görə bilirik və bu başlanğıç üçün yetərlidir. 
Daha  sonra  Developer  Tools-a  geri  qayıdacıq  və  Chrome-da  xətaların  həllinə 
baxacıq. 
Firefox, Edge və digərləri  
Digər brauzerlərin çoxunda “Developer Tools”-u açmaq üçün F12-i istifadə edilir. 
Bunların  görüntüsü  və  funksionallığı  olduqca  bənzərdir.  Chrome  ilə  başlıya 
bilərsiniz. 

15 
 
 
Safari 
Safari  (Mac  brauzeridir,  Windows  /  Linux  tərəfində  dəstəklənmir)  burada  biraz 
xüsusidir. Bunun “Developer menyusu” nü aktiv etmək lazımdır. 
Seçimləri açın və “Developer” bölməsinə daxil olun. Altda seçim qutusu var: 
 
Cmd + Opt + C konsolu dəyişdirir. Həmdə “ Developer ” adlı yeni üst menyu 
bölməsi görünəcəkdir. Əmr və seçimlər vardır. 
Çox sətirli giriş 
Konsolda bir kod sətiri yazdıqdan sonra enter basıldıqda kodumuz işləyəcəkdir. 
Birdən çox sətir əlavə etmək üçün shift+enter -lə edə bilərsiniz. 

16 
 
 
Nəticə 
Developer xətaları görməyimizə, kod yazmaq üçün, dəyişənlərə baxmaq üçün və 
daha çox funksiyaları vardır. 
Windows-dakı brauzerlər üçün F12 – ilə açılır. Mac üçün Chrome-un Cmd+Opt+J 
Safari: Cmd + Opt + C (əvvəlcə aktiv edilməlidir) 
İndi demək olarki hazırıq. Bundan sonrakı bölmədə Javascriptə keçəcik. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

17 
 
5.  Salam, dünya! 
Kitabın bu  hissəsində  dilin  özü olan başlanğıc səviyyə  Javascript  haqqında 
danışacıq.  Daha  sonra  Node.js  və  onun  digər  frameworkləri  haqqında 
öyrənəcəksiniz. 
Javascript  kodlarımızı  işləməsi  üçün  ilk  öncə  kodu  yazmaq  üçün  yer  təyin 
edilməlidir. Javascript kodlarımız aşağıdakı yollarla əlavə edə bilərik : 
 “Script” teqi 
Javascript kodları HTML sənədində hər hansı bir yerində 

Yüklə 1,07 Mb.

Dostları ilə paylaş:
  1   2   3   4   5   6   7




Verilənlər bazası müəlliflik hüququ ilə müdafiə olunur ©azkurs.org 2024
rəhbərliyinə müraciət

gir | qeydiyyatdan keç
    Ana səhifə


yükləyin