Onlayn təlim javascript rus dilində. Javascript: öyrənməyə haradan başlamaq və necə davam etmək. JavaScript hərflərə həssasdır

Həmişə işlədiyiniz sahədə hərtərəfli bilik əldə etmək istəyirsiniz. JavaScript, haqqında hərtərəfli bilik əldə etməyin demək olar ki, mümkün olmadığı dillərdən biridir. O, ümumən internet kimi daim inkişaf edir, ona görə də istənilən veb tərtibatçı bu inkişafla ayaqlaşmaq üçün səy göstərməli və daha çox istifadə etdiyi texnologiyanın əsaslarını əzbər bilməlidir.

JavaScript indi İT dünyasında üstünlük təşkil edir. Bununla siz ya kiçik bir veb proqram yarada, ya da robotu proqramlaşdıra bilərsiniz. Xoşbəxtlikdən, dil kifayət qədər uzun müddətdir mövcuddur və onu mükəmməl şəkildə mənimsəyən tərtibatçılar bu dildə proqramlaşdırma təcrübələrini kitablarda təsvir etmişlər.

Bu kitab sizə kompüterlərin istədiyinizi necə etmələrini izah edir. Bu gün kompüterlər tornavidalar qədər geniş yayılmışdır - lakin daha çox gizli mürəkkəblikləri ehtiva edir və buna görə də başa düşmək və idarə etmək daha çətindir. Çoxları üçün onlar yad, bir az təhdid edən şeylər olaraq qalırlar. Kitab rus dilində də mövcuddur.

Bu kitab daxili obyektlər və dilin nüansları vasitəsilə JavaScript dünyasına hərtərəfli baxış təqdim edir. Bu kitab ümumiyyətlə proqramlaşdırmanı və xüsusən də JavaScript-i öyrənməyə yeni başlayan insanlar üçün nəzərdə tutulmayıb.

Bu kitab həm klassik, həm də müasir JavaScript proqramlaşdırma nümunələrini əhatə edir. Ümumiyyətlə, yeni başlayan proqramçılar üçün nəzərdə tutulub.

HTML5 böyük imkanlar təqdim edir. jQuery də. Eynilə Node.JS kimi. Onlara bir az daha təmiz JavaScript əlavə etsəniz, interneti asanlıqla fəth edə bilərsiniz.

Bu kitab JS-dən istifadə edərək veb proqramlar yaratmağı planlaşdıranlar üçün nəzərdə tutulub. O, dilin xüsusiyyətlərini, faydalı alətləri, şablonları təsvir edir və siyahı bununla məhdudlaşmır.

Bu kitab sizə JavaScript haqqında ümumi məlumat verəcək, onun həm ümumi məntiqini, həm də təfərrüatlarını başa düşəcək. Müəllif hesab edir ki, oxucu artıq obyekt yönümlü proqramlaşdırma prinsipləri və PHP, Ruby, Python, C++ və ya Java kimi dillərlə tanışdır.

Veb proqramlaşdırma təcrübənizi bir addım irəli aparmağa və HTML və CSS-də kodlaşdırmadan tam hüquqlu dinamik səhifələr yaratmağa hazırsınızmı? O zaman ən qaynar proqramlaşdırma dili - JavaScript ilə tanış olmaq vaxtıdır!

Bu kitabı oxuduqdan sonra siz JavaScript dili haqqında hər şeyi öyrənəcəksiniz: dəyişənlərdən tutmuş döngəyə qədər. Siz müxtəlif brauzerlərin koda niyə fərqli cavab verdiyini və bütün brauzerlər tərəfindən dəstəklənən universal kodun necə yazılmasını başa düşəcəksiniz. JS-nin niyə gələcək olduğunu başa düşəcəksiniz və əsl qabaqcıl inkişaf etdirici olacaqsınız.

Bu kitab sizə JS-də heç bir üçüncü tərəf çərçivələrindən və ya kitabxanalarından istifadə etmədən qabaqcıl proqramları necə yazacağınızı göstərir.

JavaScript prinsipləri haqqında ümumi biliyə əlavə olaraq, bu kitab sizə JSON və ya NoSQL kimi əlaqəli sahələr haqqında məlumat verəcək, eləcə də ümumilikdə veb proqramların necə yazıldığını başa düşəcək.

Adından da göründüyü kimi, bu kitab tək səhifəli proqramların hazırlanması haqqındadır. O, xüsusi texnologiyaları və çərçivələri təsvir etmir, lakin ümumi nümunələri və təcrübələri yaxşı təsvir edir.

Kitab DOM (Sənəd Obyekt Modeli) ilə işləməyə həsr olunub - bəlkə də bütün veb tərtibatçıları üçün JavaScript-də ən vacib şey.

JSON və JSLint-in yaradıcısı Duqlas Krokford tərəfindən yazılmış bu kitab JavaScript dünyasında hər kəsin oxumalı olduğu klassikdir. O, obyekt yönümlü yanaşmanın əsaslarını əhatə edir və həm yaxşı, həm də pis bir çox nümunə verir. Təbii ki, müəllif bu cür “zərərli” nümunələri necə düzəltmək və belə səhvlərdən qaçmaq yollarını izah edir.

Tanınmış müəllim Kayl Simpson tərəfindən yazılmış bu seriya hər biri dilin fərqli bölməsini əhatə edən 6 kitabdan ibarətdir. Bu kitabların əsas üstünlüyü onların kifayət qədər qısa olmasıdır, ona görə də diqqətinizi yayındırmağa vaxtınız olmayacaq. Siz bu seriyadan “ES6 and Beyond” kitabını rus dilində kağız variantda əldə edə bilərsiniz.

JavaScript internet səhifələrini interaktiv, dinamik etməyə və ən yüksək performansa nail olmağa imkan verən veb tərtibatçılarının əsas alətidir. Bu, JavaScript üçün yaxşı strukturlaşdırılmış bələdçidir ki, bu, öyrənmək üçün ən asan deyil, çox populyar dili tez öyrənməyə imkan verəcəkdir. Kitabda jQuery kitabxanasına çox diqqət yetirilir. Çoxlu nümunələr və ətraflı tapşırıqlar da var.

Hərtərəfli Bələdçini oxuduqdan sonra aşağıdakıları edə biləcəksiniz:

  • Veb saytınızın səhifələrini interaktiv edin.
  • jQuery UI plagininin ən son versiyasını mənimsəyin.
  • Avtomatik məlumatların yoxlanılması və korreksiyası ilə rahat formalar yaradın.
  • AJAX texnologiyasından istifadə edin.
  • Bu sahədə biliklərinizi dərinləşdirin və peşəkar olun.

Planlaşdırmanın əsaslarını öyrəndikdən sonra, şübhəsiz ki, daha çox interaktivlik və gözəllik, həmçinin saytın arxa planla qarşılıqlı əlaqəsi üçün daha rahat yollar istəyəcəksiniz. Məhz o zaman JavaScript dəlicəsinə məşhur jQuery çərçivəsi ilə birlikdə arenaya daxil oldu. Kitabla işləməyə başlamaq üçün heç bir dərin biliyə ehtiyac yoxdur - bütün bunları ondan əldə edəcəksiniz. Burada yalnız cross-brauzer uyğunluğu və səhifənin optimallaşdırılması sahəsində ən son təcrübələr nümayiş etdirilir və təqdimat aydın dildə aydın nümunələr və illüstrasiyalarla təqdim olunur.

Artıq klassika çevrilmiş kitab. Onun ən son nəşri HTML5 və ECMAScript 6-nı əhatə edir - bu gün ən aktual texnologiyalar. O, həmçinin jQuery və server tərəfində JavaScript-ə yeni fəsillər əlavə edir. Bu təlimat həm tam yeni başlayanlar, həm də JavaScript biliklərini mükəmməlləşdirmək istəyənlər üçün faydalı olacaq.

“Altı həftədə tam yığın JavaScript: kurikulum bələdçisi” məqaləsinin uyğunlaşdırılmış tərcüməsi

Veb inkişafı təcrübəsiz proqramçılar arasında ən sadə və buna görə də populyar sahələrdən biridir. İstənilən mətn redaktoru və brauzer işləmək üçün kifayətdir; qabaqcıl səviyyədə alqoritmləri öyrənməyə ehtiyac yoxdur, proqramın yazılmasının hər bir mərhələsinin nəticəsi aydındır - ümumiyyətlə, bir çox üstünlüklər var. Veb inkişafı kontekstində əsas bacarıq JavaScript biliyidir.

Hal-hazırda JavaScript çox sürətlə inkişaf edir və buna görə də dili öyrənərkən çaşqın olmaq asandır. Biz sizə JavaScript və əlaqəli texnologiyaların bütün əsas aspektlərini əhatə edən yaxşı strukturlaşdırılmış kurikulum təklif edirik.

Niyə JavaScript?

Dilin açıqlığını qeyd etmək lazımdır - adətən bir-biri ilə rəqabət aparan şirkətlər JavaScript-i inkişaf etdirmək üçün əməkdaşlıq edirlər. Dil çox çevikdir və həm obyekt yönümlü, həm də funksional yanaşmaların tərəfdarlarına uyğun olacaq. Çoxlu sayda kitabxanalar və çərçivələr istənilən növ problemin həllini asanlaşdırır və Node.js server platforması dildən təkcə brauzerdə deyil, həm də konsolda istifadə etməyə imkan verir. Siz hətta masa üstü və mobil proqramlar da yaza bilərsiniz: birincisi Electron çərçivəsini, ikincisi isə NativeScript və ya React Native-dən istifadə edir.

Əsaslar

Əvvəlcə JavaScript-in əsas anlayışlarını, veb inkişafı və ümumiyyətlə proqramlaşdırmanı öyrənməlisiniz:

  • obyekt yönümlü JS - konstruktorlar və fabriklər, miras;
  • funksional JS - daha yüksək dərəcəli funksiyalar, bağlanmalar, rekursiya;
  • Jasmine testinin spesifikasiyası;
  • HTML, CSS və jQuery əsasları.
Git

Git tərtibatçılar üçün vacib bir vasitədir, ona görə də mümkün qədər tez işə başlayın. Sahib olmalı olduğunuz əsas bacarıqlar bunlardır:

  • qovluqlarda faylların yaradılması və köçürülməsi;
  • Git-də inisializasiya və icra;
  • GitHub-da depoların qurulması.
Alqoritmlər və məlumat strukturları

Sonra, alqoritmləri (xüsusən alqoritmik mürəkkəblik anlayışı), həmçinin əsas məlumat strukturlarını öyrənməyə dəyər: əlaqəli siyahılar, növbələr, yığınlar, ikili axtarış ağacları və hash cədvəlləri. Bu sizə kömək edəcək.

BackendNode.js

10 il əvvəl JavaScript yalnız front-end inkişafı üçün istifadə edilə bilərdi. İndi Node.js sayəsində məsələ bir “cəbhə” ilə məhdudlaşmır. Node sadəcə olaraq server tərəfində JS kodunu işlətmək üçün mühitdir, ona görə də heç bir yeni sintaksisi öyrənməli olmayacaqsınız, lakin siz faylları idxal və ixrac etməli, kodu modullaşdırmalısınız və npm paket menecerindən istifadə etməlisiniz.

Serverlər, HTTP, Express.js

Node-u öyrəndikdən sonra, backend inkişafı ilə tanışlığınızı davam etdirməyə və serverləri və marşrutlaşdırmanı başa düşməyə dəyər. Siz HTTP-yə vurğu ilə portlar və protokollarla başlaya və sonra sorğuların işlənməsi üçün Node kitabxanası olan Express-ə keçə bilərsiniz.

Asinxron JavaScript verilənlər bazaları, sxemlər, modellər və ORM-lər

Verilənlər bazaları veb inkişafının ən vacib elementlərindən biridir. Tətbiqinizin səhifə yeniləndiyi zaman itirilməyən hər hansı məlumatı yükləməli və ya saxlaması lazımdırsa, verilənlər bazasından istifadə etməli olacaqsınız. Əlaqəli və qeyri-relational verilənlər bazası arasında fərq qoymağı öyrənməli və əlaqələrin növlərini başa düşməlisiniz. Sonra fərqli insanlarla tanış olun. ORM ilə işləmək bacarığı da artıq olmayacaq.

FrontendHTML və CSS

HTML və CSS hər hansı bir veb tərtibatçısının əsasını təşkil edir. Onları mükəmməl bilmək məcburiyyətində deyilsiniz, ancaq onları başa düşməlisiniz. Siz həmçinin məşhur kitabxananı (məsələn, Bootstrap) və Sass kimi CSS preprosessorunu araşdıra bilərsiniz - bu, CSS-nin adi kod kimi görünməsinə kömək edəcək. HTML ilə işi asanlaşdırmaq üçün məşhur şablon mühərriklərindən birini, məsələn, pug seçə bilərsiniz.

jQuery və DOM manipulyasiyası

HTML və CSS-dən istifadə edərək səhifənizin görünüşünü və hissini yaratdıqdan sonra DOM ilə manipulyasiya etmək üçün jQuery-dən də istifadə edəcəksiniz. Bir çox insanlar jQuery-nin faydasız olduğunu və tezliklə Angular və React ilə əvəzlənəcəyini düşünür, lakin o, inanılmaz dərəcədə populyardır və buna görə də bilməyə dəyər. Bundan əlavə, bir gün özünüzü elə vəziyyətə düşəcəksiniz ki, React mikroskopu ilə mismar vurmaq sizin üçün əlverişsiz olacaq və daha sonra yüngül jQuery köməyinizə gələcək.

Chrome Developer Alətləri

Çoxlu imkanlar təqdim edən Chrome alətlərinə laqeyd yanaşmaq bağışlanmaz olardı. Onlarla siz DOM elementlərini yoxlaya, konsol vasitəsilə debug edə, marşrutları izləyə və daha çox şey edə bilərsiniz. Biz Chrome konsolunun gündəlik işləri asanlaşdıracaq bir neçə faydalı xüsusiyyətlərini təsvir edirik.

AJAX

Tətbiqinizin hər verilənlər bazası əməliyyatından sonra səhifələri yenidən yükləməməsini istəyirsinizsə, sizə mütləq AJAX lazımdır - o, fon asinxron HTTP sorğuları göndərir, cavablar ekranın yalnız bir hissəsini yeniləyir. Siz .ajax metodundan istifadə edərək jQuery vasitəsilə AJAX ilə işləyə bilərsiniz.

Qabaqcıl MövzularTest əsaslı inkişaf

Yaxud TDD proqram təminatının yaradılmasının bir çox kiçik dövrələrə bölündüyü bir inkişaf texnikasıdır: əvvəlcə istənilən dəyişikliyi əhatə edən testlər yazılır, sonra bu testlərdən keçən kod yazılır. Bundan sonra kod refaktorlanır və zəruri hallarda yeni testlər yazılır. Kodun bir hissəsi bəzi testlərdən keçə bilmirsə, bu düzəldilir.

Veb yuvaları

Bu mövzuya xüsusi diqqət yetirməyə dəyər, çünki çox faydalıdır. WebSocket protokolu, HTTP-dən fərqli olaraq, bu texnologiyanı unikal edən iki istiqamətli məlumat axınına imkan verir. Ən çox yayılmış tətbiq socket.io kitabxanasıdır - onu başa düşmək və əldə edilmiş bacarıqları praktikada tətbiq etmək çox oyunçulu brauzer oyunu yaratmağa kömək edəcəkdir.

ES6, Babel, Webpack

Hazırda əsas standart ES6 (ES2015)-dir, lakin ES2016 artıq qəbul edilib və ES2017 inkişaf mərhələsindədir, ona görə də siz həmişə yeniləmələrdən xəbərdar olmalı və onlardan istifadə etməlisiniz. Uyğunluq problemləri yalnız bir neçə vasitə ilə həll edilə bilər:

  • Babel - bütün brauzerlər tərəfindən dəstəklənən ES6 kodunu (ES2016 dəstəyi tezliklə) ES5-ə tərtib edir. O, hətta JSX/React komponentlərini necə tərtib etməyi bilir, bu da onu istənilən veb tərtibatçı üçün əvəzolunmaz edir;
  • Webpack - bütün mənbə fayllarınızı (şəkillər, şriftlər, üslub cədvəlləri, JS faylları və s.) vahid asılılıq qrafikində toplayır. Kiçik proqramlar yaradarkən bu faydalı olmayacaq, lakin React ilə işləyərkən onun köməyi əvəzolunmazdır.
Reaksiya və Redux

React istifadəçi interfeysləri yaratmaq üçün kitabxanadır. O, 2013-cü ildə Facebook tərəfindən yaradılıb və tez bir zamanda tərtibatçılar arasında populyarlaşdı. React-in necə işlədiyini və nə etdiyini başa düşmək üçün oxumalı və sonra sökməlisiniz. React təkcə front-end inkişafı üçün faydalı deyil: Facebook mobil (React Native) və VR inkişafı (React VR) üçün çərçivə versiyalarını buraxdı.

Redux, React ilə birlikdə tez-tez istifadə olunan proqnozlaşdırıla bilən vəziyyət konteyneridir. Modulluğuna görə kodu qısaltmaq üçün istifadə edilə bilər. Xüsusilə oyunlar kimi real vaxt rejimində, çox istifadəçili proqramlarda faydalıdır.

Doğrulama, sessiyalar, kukilər

Siz həmçinin proqramların istifadəçilərlə necə qarşılıqlı əlaqədə olduğunu başa düşməlisiniz, hesaba giriş və çıxışları emal etməli və imtiyazlar verməlisiniz. Sessiya zamanı istifadəçinin şəxsiyyətini izləmək üçün kukilərdən istifadə olunur - HTTP sorğusuna cavab olaraq server tərəfindən brauzerə göndərilən kiçik mətn faylları. Verilənlər bazası ilə avtorizasiya səhifələri arasında əlaqəni təmin etmək üçün siz ekspress-sessiya kitabxanasından istifadə edə bilərsiniz.

Veb Təhlükəsizliyi

Və nəhayət, təhlükəsizliyə diqqət yetirməlisiniz. Həm hücum üsullarını, həm də onlardan müdafiə üsullarını öyrənmək vacibdir.

  • Tərcümə

Bu gün tərcüməsini dərc etdiyimiz material JavaScript-in əsaslarına həsr olunub və yeni başlayan proqramçılar üçün nəzərdə tutulub. O, həmçinin əsas JS konstruksiyalarına dair kiçik bir istinad kitabı kimi də hesab edilə bilər. Burada biz, xüsusən, verilənlər tipli sistem, dəyişənlər, massivlər, funksiyalar, obyekt prototipləri və dilin bəzi digər xüsusiyyətlərindən danışacağıq.

İbtidai məlumat növləri JavaScript aşağıdakı primitiv məlumat növlərinə malikdir: nömrə, boolean, sətir, təyin olunmamış, null. Dərhal qeyd etmək lazımdır ki, ibtidai məlumat növləri ilə işləyərkən, məsələn, string literals, biz hətta açıq bir konvertasiya etmədən də onların metodlarına və xüsusiyyətlərinə daxil ola bilərik. Burada əsas məqam ondan ibarətdir ki, belə əməliyyatları yerinə yetirməyə cəhd edərkən literallar avtomatik olaraq müvafiq obyekt sarğı ilə təchiz olunur.▍Nömrələr JavaScript-də yalnız bir növ ədəd var - ikiqat dəqiqlikli üzən nöqtəli nömrələr. Bu, bəzi ifadələrin hesablanması nəticələrinin arifmetik olaraq səhv olmasına gətirib çıxarır. Siz artıq bilirsiniz ki, JS-də 0.1 + 0.2 ifadəsinin qiyməti 0.3-ə bərabər deyil. Eyni zamanda tam ədədlərlə işləyərkən belə problemlər müşahidə olunmur, yəni 1 + 2 === 3.

JavaScript-də ədədi dəyərlər üçün obyekt sarğı olan Number obyekti var. Nömrə tipli obyektlər ya var a = new Number(10) kimi əmrdən istifadə etməklə yaradıla bilər, ya da yuxarıda təsvir edilən sistemin avtomatik davranışına etibar edə bilərsiniz. Bu, xüsusi olaraq Number.prototype-də saxlanılan metodların ədədi hərflərə tətbiq edildikdə çağırılmasına imkan verir:

(123).toString(); //"123" (1.23).toFixed(1); //"1.2"
Digər növlərin dəyərlərini ədədi tipə çevirmək üçün nəzərdə tutulmuş qlobal funksiyalar var. Bunlar parseInt() , parseFloat() və Nömrə() konstruktudur ki, bu halda növə çevrilməni həyata keçirən müntəzəm funksiya kimi çıxış edir:

ParseInt("1") //1 parseInt("text") //NaN parseFloat("1.234") //1.234 Number("1") //1 Number("1.234") //1.234
Rəqəmlərlə əməliyyat rəqəm olmayan bir şeylə nəticələnərsə (bəzi hesablamalar zamanı və ya nəyisə rəqəmə çevirmək istəyərkən), JavaScript xəta verməyəcək, lakin belə bir əməliyyatın nəticəsini NaN dəyəri kimi təqdim edəcək ( Nömrə deyil, nömrə deyil). Dəyərin NaN olub olmadığını yoxlamaq üçün isNaN() funksiyasından istifadə edə bilərsiniz.

JS hesab əməliyyatları çox tanış şəkildə işləyir, lakin ona diqqət yetirmək lazımdır ki, + operatoru həm ədədlərin toplanması, həm də sətirlərin birləşməsini yerinə yetirə bilər.

1 + 1 //2 "1" + "1" //"11" 1 + "1" //"11"

▍Strlər JavaScript-də sətirlər Unicode simvollarının ardıcıllığıdır. Sətir literalları ikiqat dırnaq ("") və ya tək dırnaq ("") içərisində yer alacaq mətni əlavə etməklə yaradılır. Artıq qeyd edildiyi kimi, sətir literalları ilə işləyərkən, prototipində substring(), indexOf(), concat() daxil olmaqla bir çox faydalı metodlara malik müvafiq obyekt sarğısına etibar edə bilərik.

"text".substring(1,3) //ex "text".indexOf("x") //2 "text".concat(" end") //mətn sonu
Sətirlər, digər primitiv dəyərlər kimi, dəyişməzdir. Məsələn, concat() metodu mövcud sətri dəyişdirmir, yenisini yaradır.

▍Boolean dəyərləri JS-də Boolean məlumat növü iki dəyərlə təmsil olunur - doğru və yanlış. Dil avtomatik olaraq müxtəlif dəyərləri Boolean məlumat növünə çevirə bilər. Beləliklə, false məntiqi dəyərinə əlavə olaraq, aşağıdakı dəyərlər null , undefined , "" (boş sətir), 0 və NaN-dir. Qalan hər şey, o cümlədən hər hansı obyektlər həqiqi dəyərlərdir. Boolean əməliyyatları zamanı doğru hesab edilən hər şey doğruya çevrilir və yalan hesab edilən hər şey yalana çevrilir. Aşağıdakı nümunəyə nəzər salın. Yuxarıdakı prinsiplərə uyğun olaraq, boş sətir yalana çevriləcək və bu kodun icrası nəticəsində konsolda This is false sətri görünəcək.

Mətn = ""; if(mətn) ( console.log("Bu doğrudur"); ) else ( console.log("Bu yanlışdır"); )

Obyektlər Obyektlər açar-dəyər cütlərindən ibarət dinamik strukturlardır. Dəyərlər primitiv məlumat növləri, obyektlər və ya funksiyalar ola bilər.

Obyektlərin hərfi sintaksisi ilə obyektlər ən asan yaradılır:

edək obj = ( mesaj: "Bir mesaj", doSomething: function() () )
Obyekt xassələri istənilən vaxt oxuna, əlavə edilə, redaktə edilə və silinə bilər. Bunun necə edildiyi belədir:

  • Oxu xassələri: obyekt.adı, obyekt .
  • Məlumatların xassələrə yazılması (əgər əldə edilən xüsusiyyət mövcud deyilsə, göstərilən açarla yeni xüsusiyyət əlavə olunur): obyekt.adı = dəyər, obyekt = dəyər.
  • Xüsusiyyətlərin silinməsi: obyektin adının silinməsi, obyektin silinməsi.
Budur bəzi nümunələr:

Qoy obj = (); // boş obyekt yaratmaq obj.message = "Mesaj"; // yeni xüsusiyyət əlavə etmək obj.message = "Yeni mesaj"; // xassəni redaktə etmək delete object.message; // mülkiyyətin silinməsi
Dildəki obyektlər hash cədvəlləri kimi həyata keçirilir. Object.create(null) əmrindən istifadə etməklə sadə hash cədvəli yaradıla bilər:

Qoy fransız = Object.create(null); fransız["bəli"] = "oui"; fransız["yox"] = "qeyri"; fransızca["bəli"];//"oui"
Əgər obyekti dəyişməz etmək lazımdırsa, siz Object.freeze() əmrindən istifadə edə bilərsiniz.

Obyektin bütün xassələrini təkrarlamaq üçün Object.keys() əmrindən istifadə edə bilərsiniz:

Funksiya logProperty(name)( console.log(name); //əmlak adı console.log(obj); //mülk dəyəri ) Object.keys(obj).forEach(logProperty);

▍İbtidai tiplərin və obyektlərin qiymətlərinin müqayisəsi Primitiv dəyərlərlə praktiki olaraq işləyərkən, artıq deyildiyi kimi, onları obyekt olmasa da, xassələri və metodları olan obyektlər kimi qəbul edə bilərsiniz. Primitiv dəyərlər dəyişməzdir və obyektlərin daxili strukturu dəyişə bilər Dəyişənlər JavaScript-də dəyişənlər var, let və const açar sözlərindən istifadə etməklə elan edilə bilər.

var açar sözündən istifadə edərkən siz dəyişəni elan edə və lazım gələrsə, onu müəyyən dəyərlə inisiallaşdıra bilərsiniz. Əgər dəyişən işə salınmayıbsa, onun dəyəri müəyyən edilmir. var açar sözü ilə elan edilən dəyişənlər funksional əhatəyə malikdir.

let açar sözü var ilə çox oxşardır, fərq let açar sözü ilə elan edilən dəyişənlərin blok əhatə dairəsinə malik olmasıdır.

Const açar sözündən istifadə etməklə elan edilən dəyişənlərin də blok əhatə dairəsi var, belə dəyişənlərin qiymətlərinin dəyişdirilə bilməyəcəyini nəzərə alsaq, daha düzgün “sabitlər” adlandırılacaq. Ondan istifadə etməklə elan edilmiş dəyişənin qiymətini donduran const açar sözünü obyektləri donduran Object.freeze() metodu ilə müqayisə etmək olar.

Əgər dəyişən funksiyadan kənar elan edilirsə, onun əhatə dairəsi qlobaldır.

Massivlər JavaScript-də massivlər obyektlərdən istifadə etməklə həyata keçirilir. Nəticə olaraq, massivlər haqqında danışarkən, əslində massiv kimi obyektlərdən danışırıq. Siz onların indekslərindən istifadə edərək massiv elementləri ilə işləyə bilərsiniz. Rəqəmsal indekslər sətirlərə çevrilir və massiv elementlərinin qiymətlərinə daxil olmaq üçün adlar kimi istifadə olunur. Məsələn, arr kimi konstruksiya arr["1"] kimi konstruksiyaya bənzəyir və hər ikisi eyni dəyərə giriş imkanı verəcək: arr === arr["1"] . Yuxarıdakılara əsasən, let arr = ["A", "B", "C"] ilə elan edilmiş sadə massiv belə bir obyekt kimi təqdim olunur:

("0": "A", "1": "B", "2": "C")
Sil əmrindən istifadə edərək massivdən elementlərin çıxarılması onda boşluqlar yaradır. Bu problemin qarşısını almaq üçün siz splice() əmrindən istifadə edə bilərsiniz, lakin bu, yavaşdır, çünki elementi çıxardıqdan sonra massivin qalan elementlərini hərəkətə gətirir, əslində, onları massivin əvvəlinə, sola keçirir.

arr = ["A", "B", "C"] olsun; arr silmək; console.log(arr); // ["A", boş, "C"] console.log(arr.length); // 3
Massiv metodları yığınlar və növbələr kimi məlumat strukturlarının həyata keçirilməsini asanlaşdırır:

// stack let stack = ; stack.push(1); // stack.push(2); // let last = stack.pop(); // console.log(son); // 2 // queue let queue = ; növbə.push(1); // növbə.push(2); // let first = queue.shift();// console.log(birinci); // 1

Funksiyalar JavaScript-də funksiyalar obyektlərdir. Funksiyalar dəyişənlərə təyin edilə, obyektlərdə və ya massivlərdə saxlanıla, digər funksiyalara arqument kimi ötürülə və digər funksiyalardan qaytarıla bilər.

Funksiyaları elan etməyin üç yolu var:

  • Klassik funksiya bəyannaməsi (Funksiya Bəyannaməsi və ya Funksiya Bəyanatı).
  • Funksiya İfadələrindən istifadə, həmçinin Funksiya Literalları adlanır.
  • Arrow Function sintaksisindən istifadə.
▍Klassik funksiya elanı Funksiya bəyannaməsinə bu yanaşma ilə aşağıdakı qaydalar tətbiq olunur:
  • Funksiya elan sətirindəki ilk açar söz funksiyadır.
  • Funksiyaya ad verilməlidir.
  • Funksiya elan edilmədən əvvəl kodda funksiya bəyannaməsinin elan edildiyi əhatə dairəsinin yuxarısına yüksəldilməsi mexanizminə görə istifadə edilə bilər.
Klassik funksiya bəyannaməsi belə görünür:

doSomething()() funksiyası

▍Funksiya İfadələri Funksiya ifadələrindən istifadə edərkən aşağıdakıları nəzərə alın:
  • Funksiya açar sözü artıq funksiya elan sətirində ilk söz deyil.
  • Funksiya adı isteğe bağlıdır. Həm anonim, həm də adlandırılmış funksiya ifadələrindən istifadə etmək mümkündür.
  • Bu cür funksiyaları çağırmaq üçün əmrlər onları elan etmək üçün əmrlərə əməl etməlidir.
  • Belə bir funksiya elan edildikdən dərhal sonra IIFE (Dərhal Çağrılan Funksiya İfadəsi) sintaksisindən istifadə etməklə işə salına bilər.
Funksiya ifadəsi belə görünür:

Let doSomething = function()()

▍Ox funksiyaları Ok funksiyaları anonim funksiya ifadələri yaratmaq üçün mahiyyətcə “sintaktik şəkər” hesab edilə bilər. Qeyd etmək lazımdır ki, bu cür funksiyaların öz this və arqument subyektləri yoxdur. Ok funksiyası bəyannaməsi belə görünür:

Let doSomething = () = > ();

▍Funksiyaları çağırmağın yolları Funksiyaları müxtəlif üsullarla çağırmaq olar. Normal funksiya çağırışı doSomething(arqumentlər) TheObject.doSomething(arqumentlər) theObject["doSomething"](arqumentlər) funksiyasını konstruktor kimi çağırmaq new doSomething. (arqumentlər) apply() metodundan istifadə etməklə funksiyanın çağırılması doSomething.apply(theObject, ) doSomething.call(theObject, arqumentlər) bind() metodundan istifadə edərək funksiyanın çağırılması icazə verin doSomethingWithObject = doSomething.bind(theObject); doSomethingWithObject();
Funksiyalar elan edildikdə göstərilən parametrlərin sayından daha çox və ya daha az arqumentlə çağırıla bilər. Funksiya əməliyyatı zamanı “əlavə” arqumentlər sadəcə olaraq nəzərə alınmayacaq (baxmayaraq ki, funksiya onlara daxil olacaq), çatışmayan parametrlər müəyyən edilməmiş dəyəri alacaq.

Funksiyaların iki psevdoparametri var: bu və arqumentlər.

▍ this açar sözü this açar sözü funksiyanın kontekstini təmsil edir. Göstərdiyi dəyər funksiyanın necə çağırıldığından asılıdır. Funksiya necə çağırıldığından asılı olaraq this açar sözünün qəbul etdiyi dəyərlər bunlardır (onlar, kod nümunələri ilə, burada istifadə olunan konstruksiyalar yuxarıda təsvir edilmişdir):
  • Normal funksiya çağırışı pəncərə / qeyri-müəyyəndir.
  • Bir obyektin metodu kimi funksiyanın çağırılması - theObject .
  • Funksiyanı konstruktor kimi çağırmaq yeni obyektdir.
  • application() metodundan istifadə edərək funksiyanın çağırılması - theObject .
  • bind() metodundan istifadə edərək funksiyanın çağırılması - theObject .
▍Arqumentlər açar sözü Arqumentlər açar sözü funksiya çağırışında istifadə olunan bütün arqumentlərə giriş imkanı verən psevdoparametrdir. Massiv kimi görünür, lakin massiv deyil. Xüsusilə, onun massiv metodları yoxdur.

Funksiya azaltmaqToSum(cəmi, dəyər)( cəmi + dəyəri qaytarın; ) funksiya cəmi())( qoy args = Array.prototype.slice.call(arqumentlər); args.reduce(reduceToSum, 0); ) sum(1,2) qaytarın , 3);
Arqument açar sözünə alternativ qalan parametrlər üçün yeni sintaksisdir. Aşağıdakı misalda args funksiya çağırıldığı zaman ona ötürülən hər şeyi ehtiva edən massivdir.

Funksiya cəmi(...args)( args.reduce(reduceToSum, 0); ) qaytarın

▍Return Statement Tərkibində qaytarma ifadəsi olmayan funksiya müəyyən edilməmiş şəkildə qayıdacaq. Qayıdış açar sözündən istifadə edərkən, avtomatik nöqtəli vergül daxiletmə mexanizminin necə işlədiyinə diqqət yetirin. Məsələn, aşağıdakı funksiya boş bir obyekt deyil, qeyri-müəyyən bir dəyər qaytaracaq:

GetObject() funksiyası (qaytarma ( ) ) getObject()
Bu problemin qarşısını almaq üçün açılış mötərizəsini qaytarma ifadəsi ilə eyni sətirə qoyun:

GetObject() funksiyası (qaytarma ( ) )

Dynamic Typing JavaScript dinamik şəkildə yazılmış bir dildir. Bu o deməkdir ki, konkret dəyərlərin növləri var, lakin dəyişənlər yoxdur. Proqramın icrası zamanı eyni dəyişənə müxtəlif tipli qiymətlər yazıla bilər. Budur, müxtəlif növ dəyərlərlə işləyən bir funksiya nümunəsi:

Function log(value)( console.log(value); ) log(1); log("mətn"); log((mesaj: "mətn"));
Dəyişəndə ​​saxlanılan verilənlərin növünü öyrənmək üçün typeof() operatorundan istifadə edə bilərsiniz:

n = 1 olsun; typeof(n); //nömrə let s = "mətn"; tip(lər); //string let fn = function() (); typeof(fn); //funksiya

Tək yivli icra modeli JavaScript işləmə vaxtı tək yivlidir. Bu, xüsusilə, iki funksiyanın eyni vaxtda yerinə yetirilməsinin qeyri-mümkünlüyü ilə ifadə olunur (əgər siz burada toxunmayacağımız asinxron kodun icrası imkanını nəzərə almırsınızsa). İş vaxtı mühitində işlənməli olan işlərin siyahısını saxlayan Hadisə Növbəsi adlanan bir şey var. Nəticə etibarı ilə, tək yivli JS icra sxemində resurs blokadaları problemi yoxdur, ona görə də kilidləmə mexanizminə ehtiyac yoxdur. Bununla belə, hadisə növbəsinə daxil olan kod tez yerinə yetirilməlidir. Brauzer proqramında əsas mövzunu çox yükləsəniz, proqram səhifəsi istifadəçi daxilinə cavab verməyəcək və brauzer bu səhifəni bağlamağınızı təklif edəcək. O, belə mexanizmlər üçün olduqca adi olan prinsipə əsasən işləyir: xətaya səbəb ola biləcək kod try/catch konstruksiyasından istifadə etməklə yazılır. Kodun özü try blokundadır, səhvlər catch blokunda idarə olunur.

Maraqlıdır ki, bəzən JavaScript fövqəladə hallar baş verdikdə səhv mesajları vermir. Bu, JS-nin ECMAScript 3 standartının qəbuluna qədər səhvlər atmaması ilə bağlıdır.

Məsələn, aşağıdakı kod parçasında dondurulmuş obyekti dəyişdirmək cəhdi uğursuz olacaq, lakin heç bir istisna atılmayacaq.

edək obj = Object.freeze(); obj.message = "mətn";
Bəzi "səssiz" JS səhvləri ciddi rejimdə görünür, siz "ciddi istifadə et" konstruksiyasından istifadə edərək onu aktivləşdirə bilərsiniz; .

Prototip sistemi Prototip sistemi konstruktor funksiyaları, Object.create() əmri və sinif açar sözü kimi JS mexanizmlərinin əsasını təşkil edir.
Aşağıdakı misalı nəzərdən keçirək:

Let service = ( doSomething: function() () ) let specializedService = Object.create(service); console.log(ixtisaslaşdırılmışService.__proto__ === xidmət); //doğru
Burada Object.create() əmrindən prototipi xidmət obyekti olan ixtisaslaşdırılmışService obyekti yaratmaq üçün istifadə edilmişdir. Nəticədə məlum olur ki, doSomething() metodu ixtisaslaşdırılmışService obyektinə daxil olmaqla çağırıla bilər. Bundan əlavə, bu o deməkdir ki, ixtisaslaşmışService obyektinin __proto__ xassəsi xidmət obyektinə işarə edir.

İndi class açar sözündən istifadə edərək oxşar obyekt yaradaq:

Class Service ( doSomething() ) class SpecializedService genişləndirir Xidmət ( ) let specializedService = new SpecializedService(); console.log(specializedService.__proto__ === SpecializedService.prototype);
Service sinfində elan edilmiş metodlar Service.prototype obyektinə əlavə olunacaq. Xidmət sinfinin nümunələri eyni prototipə (Service.prototype) malik olacaq. Bütün nümunələr metod çağırışlarını Service.prototype obyektinə həvalə edəcək. Nəticədə məlum olur ki, metodlar Service.prototype-də yalnız bir dəfə elan edilir, bundan sonra onlar sinfin bütün nümunələri tərəfindən “miras alınır”.

▍Prototip zənciri Obyektlər digər obyektlərin “varisi” ola bilər. Hər bir obyektin metodları onun üçün əlçatan olan bir prototipi var. Obyektin özündə olmayan xassə daxil olmağa cəhd etsəniz, JavaScript onu prototip zəncirində axtarmağa başlayacaq. Bu proses xüsusiyyət tapılana qədər və ya axtarış zəncirin sonuna çatana qədər davam edəcək JavaScript-də Funksional Proqramlaşdırma haqqında JavaScript-də funksiyalar birinci dərəcəli obyektlərdir, dil bağlanma mexanizmini dəstəkləyir. Bu, JS-də funksional proqramlaşdırma texnikalarının tətbiqinə yol açır. Xüsusilə, daha yüksək səviyyəli funksiyalardan istifadə imkanından danışırıq.

Bağlama, ana funksiya yerinə yetirildikdən sonra belə, ana funksiya daxilində elan edilmiş dəyişənlərə çıxışı olan daxili funksiyadır.

Daha yüksək səviyyəli funksiya digər funksiyaları arqument kimi qəbul edə, funksiyaları qaytara və ya hər ikisini yerinə yetirə bilən funksiyadır.

JS-də funksional proqramlaşdırma bir çox nəşrlərdə işıqlandırılır. Əgər maraqlanırsınızsa, burada bu mövzuya həsr olunmuş bəzi materiallar var

Veb səhifəmizə daxil olan müştəri tərəfində bəzi hərəkətləri yerinə yetirməli olduğumuz zaman JavaScript işə düşür.

JavaScript serverlə əlaqə saxlamadan veb səhifəni dəyişdirə, istifadəçi girişinin dəyərlərini təsdiq edə və hər hansı digər əməliyyatları yerinə yetirə bilər.

Bu məqalə JavaScript-dən istifadə etməyə başlamağınız üçün bəzi əsas məlumatları təqdim edir.

Skriptin birbaşa səhifə koduna daxil edilməsi

JS kodunu birbaşa səhifənin içərisinə daxil edə bilərsiniz.

alert("Salam!"); // burada bəzi JS kodu

Kodun ayrı bir fayla köçürülməsi

Siz JavaScript kodunu xarici fayla yerləşdirə və səhifədə ona keçiddən istifadə edə bilərsiniz

Bu halda bağlama etiketi tələb olunur.

Skriptləri bağlama teqindən əvvəl daxil etmək daha yaxşıdır

Dəyişənlər Dəyişən adları

Dəyişən adları böyük hərf, kiçik hərf, alt xətt və ya $ işarəsi ilə başlaya bilər.

Adda rəqəmlər ola bilər, lakin dəyişən adı nömrə ilə başlaya bilməz.

JavaScript hərflərə həssasdır: mytext və myText iki fərqli dəyişəndir.

Dəyişən adındakı hər bir sözü böyük hərflə başlayaraq adlandırmaq üçün CamelCase-dən istifadə etmək daha yaxşıdır.

Dəyişənlərin elan edilməsi

Javascript dəyişənləri elan etmək üçün var istifadə edir.

myText var; //undefined myText = "Salam!";

xəbərdarlıq (myText);

Dəyişən elan edildikdən dərhal sonra onun dəyəri müəyyən edilmir.

Siz dəyişəni elan edərkən ona dəyər təyin edə bilərsiniz:

Var myText = "Salam!";

Bir varda birdən çox dəyişən elan etmək də mümkündür:

Var sum = 4 + 5, myText = "Salam!";

Dəyər təyin edərkən var buraxıla bilər, lakin bunu etməmək daha yaxşıdır.

Dəyişən növləri

JavaScript-də aşağıdakı sətirlərdən istifadə edə bilərsiniz:

Var myText = "Salam!";

tam ədədlər:

Var myNumber = 10;

Fraksiyalı ədədlər:

var pi = 3.14;

Boolean dəyərləri:

Var isBoolean = false;

JavaScript Sintaksis Təfərrüatları Şərhlər

Eyni sətirdəki şərhlər “//” ilə vurğulanır. Bu simvollardan sonra hər şey şərh hesab olunur.

Çoxlu sətirləri şərh etmək üçün şərhin başlanğıcını göstərmək üçün "/*" və şərhin sonunu göstərmək üçün "*/" işarəsindən istifadə edin.

/* burada şərh kodu var və o da şərh */

Operatorun ayrılması

Operatorları ayırmaq üçün ";" istifadə etməlisiniz.

Mətnin oxunuşunu yaxşılaşdırmaq üçün boşluqdan istifadə etmək məsləhətdir, lakin tələb olunmur.

Sətirlərlə işləmə var str = 4 + 5 + "7"

str-də "97" sətir dəyərini verəcəkdir

Var str2 = "7" + 4 + 5

Fakt budur ki, əlavənin dəyəri ardıcıl olaraq - soldan sağa hesablanır. 2 ədəd əlavə edildikdə nəticə ədəd olur. Sətir və nömrə əlavə edildikdə, nömrə sim kimi qəbul edilir və iki sətir birləşir.

Bir sətri nömrəyə çevirmək

Sətri nömrəyə çevirmək üçün parseInt() və parseFloat() istifadə edin.

Bu funksiyalar iki arqument alır. Birincisi, rəqəmə çevriləcək sətir, ikincisi isə tərcümə üçün istifadə olunacaq say sistemi bazasıdır. Sətri onluq ədəd kimi qəbul etmək üçün ikinci arqument kimi 10-dan istifadə etməlisiniz

Var myNumber = parseInt("345", 10);

JavaScript funksiyaları

JavaScript-də funksiyalar belə elan edilir:

myFunction() funksiyası (Bəzi JS kodları)

Dəyəri qaytarmaq üçün return istifadə etməlisiniz:

myMultiplication funksiyası(paramOne, paramTwo) (paramOne * paramTwo qaytarın)

Siz funksiyanın adını buraxmaqla "anonim" funksiya elan edə bilərsiniz.

Funksiya adını təyin etməklə başqa funksiyaya parametr kimi ötürülə bilər.

Obyektlər

JavaScript-də hər şey Obyektin nəslindəndir.

Yeni obyektin yaradılması var person = new Object(); // şəxs obyektinin yaradılması person.firstname = "Andrew"; // birinci atributu əlavə et person.lastname = "Peterson";// ikinci atributu əlavə et person.getFullName = function() (// metodu əlavə et bu.firstname + " " + this.lastname; )

İkincisi, obyekt yaratmaq üçün daha qısa seçim

Var şəxs = ( // şəxs obyektinin yaradılması ad: "Andrew", soyad: "Peterson", getFullName: function() ( this.firstname + " " + this.lastname; ) qaytarın )

Obyekt xassələri ilə işləmək

var me = new Object();

me["name"] = "Serg";
yaş = 33;

JavaScript-də massivlər Massivin yaradılması var arr = new Array(11, "Salam!", doğru); // Massiv yaradın

Qeyd etmək üçün yeni üsul

Var arr = ; // Massiv yaradın

JavaScript-də massivlərlə iş Massivdəki elementlərin sayı var length = arr.length; // 3 Massivə elementlərin əlavə edilməsi - push arr.push("Yeni dəyər"); Massivin sonuncu elementinin götürülməsi - pop var lastValue = arr.pop(); Massivlərin birləşdirilməsi var arr2 = ; var longArray = arr.concat(arr2); // İki arr və arr2 massivlərinin bir longArray-da birləşdirilməsi Join - massivin bütün elementlərinin birləşdirilməsi var longString = arr.join(":") // "11:Hello!:true" JavaScript-də müqayisə və məntiqi funksiyalar Az və ya çox var isTrue = 6 >= 5; // Bərabərlikdən böyük və ya bərabər var isFalse = 1 == 2; // isTrue bərabərdir = 1 != 2; // bərabər deyil var alsoTrue = "6" == 6; Identity var notIdentical = "3" === 3 // false, çünki məlumat növləri uyğun gəlmir notIdentical = "3" !== 3 // doğrudur, çünki məlumat növləri IF (5) ifadəsinə uyğun gəlmir.< 6) { alert("true!"); } else { alert("false!") } Оператор SWITCH var lunch = prompt("What do you want for lunch?","Type your lunch choice here"); switch(lunch){ case "sandwich": console.log("Sure thing! One sandwich, coming up."); break; case "soup": console.log("Got it! Tomato"s my favorite."); break; case "salad": console.log("Sounds good! How about a caesar salad?"); break; case "pie": console.log("Pie"s not a meal!"); break; default: console.log("Huh! I"m not sure what " + lunch + " is. How does a sandwich sound?"); } Логическое AND — && if (1 == 1 && 2 == 2) { alert("true!"); } Логическое OR — || if (1 == 1 || 2 == 3) { alert("true!"); } Логическое NOT — ! if (!(1 == 1)) { alert("false!"); } Циклы FOR for (var i = 0; i < 10; i = i + 1) { alert(i); } var names = [ "Sergey", "Andrey", "Petr" ]; for (var i = 0, len = names.length; i < len; i = i + 1) { alert(names[i]); } WHILE while (true) { // Бесконечный цикл alert("This will never stop!"); } var names = [ "Sergey", "Andrey", "Petr" ]; while (names.length >0) ( alert(adlar[i]); ) DO WHILE do ( alert("Bu heç vaxt dayanmayacaq!"); ) while (doğru) ( // Sonsuz döngə Sətirlər mətni = "Blah blah blah blah blah bla Eric \ blah blah blah Eric blah blah Eric blah blah \ bla blah blah blah blah Eric"; Substrings

Bəzən göstərmək istəmirsiniz bütöv simli, yalnız bir hissəsi. Məsələn, Gmail gələnlər qutunuzda siz onu hər bir mesajın ilk 50 və ya daha çox simvolunu göstərəcək şəkildə təyin edə bilərsiniz ki, siz onlara əvvəlcədən baxa biləsiniz. Bu önizləmə a alt sətir orijinal sətirdən (bütün mesaj).

"bir söz".substring(x, y) burada x doğramağa başladığınız yer, y isə orijinal sətiri doğramağı bitirdiyiniz yerdir.

Rəqəm hissəsi bir az qəribədir. “Salam”da “o”nu seçmək üçün bunu yazmalısınız: “salam”. alt sətir (0, 2);

Hər simvolun solunda belə bir marker olduğunu düşünün: 0-h-1-e-2-l-3-l-4-o-5 .

Əgər 0-da doğrasanız və yenə 2-də siz yalnız o ilə qalarsınız.

Daha çox nümunə:

1. "Batman"ın ilk 3 hərfi
"Batman".substring(0,3)

2. “Noutbuk”un 4-dən 6-cı hərfinə qədər
"laptop".alt sətir (3,6)

Rahatlıqla iş tapa biləcəyiniz dillə proqramlaşdırmanın əsaslarını öyrənməyə başlamaq daha yaxşıdır. Hər il TIOBE indeksi ən populyar texnologiyaların reytinqini, eləcə də onların populyarlığının yüksəliş və eniş dinamikasını dərc edir.

Bu məlumatlara əsasən, Javascript-in mövqeyini izləyə və müvafiq nəticələr çıxara bilərsiniz: dil ən populyar olmasa da, davamlı olaraq inkişaf edir. Frontend developer vəzifəsi üçün vakansiyaların sayı durmadan artdığından və Javascript-in istifadə olunduğu sahələrin sayı artdığından, ondan başlamağı tövsiyə edirik.

Javascript-i sıfırdan öyrənə biləcəyinizə hələ də əmin deyilsinizsə, o zaman bunun əksini həm söz, həm də nümunə ilə sübut edəcək bir məqaləni diqqətinizə çatdırırıq.

Javascript: sıfırdan öyrənmək

Əvvəlcə Javascriptin nə olduğunu və nə üçün lazım olduğunu söyləyək.

Javascript xüsusi proqram təminatı ilə icra edilən skriptləri yazmaq üçün istifadə edilən prototip əsaslı texnologiyadır.

İnsan dilinə tərcümə edildikdə, proqram-skript-icra zəncirində köməkçi halqadır.

Javascript niyə lazımdır? Bu proqramlaşdırma dili harada istifadə olunur? Mobil, masaüstü və platformalararası proqramlar, oyunlar, veb proqramların müştəri və server hissələrini inkişaf etdirmək qərarına gəlsəniz, Javascript-dən istifadə edə bilərsiniz. Bu, həqiqətən hər şey olmasa da, çoxlarının inkişafı üçün uyğun olan çoxfunksiyalı bir texnologiyadır.

Yeri gəlmişkən! Oxucularımız üçün artıq 10% endirim var

Başlayanlar üçün Javascript Əsasları: Harada Öyrənməli

JavaScript-i sıfırdan necə öyrənmək olar? Özünüz proqramlaşdırmağı necə öyrənmək olar? Bir çox başlanğıc proqramçı bu sualları verir. Xoşbəxtlikdən, cavab mövcuddur və olduqca təfərrüatlıdır.

Bu proqramlaşdırma dilini öyrənmək üçün bir neçə variant var:

  • ixtisaslaşdırılmış kurslar,
  • müstəqil təhsil,
  • universitetdə oxuyur.

Xüsusi kurslarla hər şey aydındır: gəlin və öyrənin. Bu cür kurslarda müəllimlər praktiki tərtibatçılardır ki, onlar nəinki paylaşırlar, həm də nəzəri məqamları təcrübə ilə möhkəmləndirirlər.

Kurslar uzunmüddətli olmalıdır. Bir ay ərzində heç kim sizə heç nə öyrədə bilməz!

Javascript-i sıfırdan necə öyrənmək olar: 4 yol

JavaScript-i özünüz öyrənmək istəyirsinizsə, son dərəcə intizamlı olmalı və hər şeyin nəticə verdiyinə əmin olmaq üçün maksimum səy göstərməli olacaqsınız. Necə deyərlər, səbr və zəhmət hər şeyi alt-üst edər.

Javascript-də proqramlaşdırmaya başlamazdan əvvəl hazırlıq planınızı ətraflı düşünməlisiniz. Biz öz versiyamızı təklif edirik və siz onu məqsədlərinizdən, imkanlarınızdan və bacarıqlarınızdan asılı olaraq tənzimləyə bilərsiniz.

1. Sadə şeyləri öyrənməyi və yadda saxlamağı öyrənin. Özünü inkişaf etdirmək bacarığı inkişaf etdirilməlidir. Səmərəli oxuya bilmək çox vacibdir. Bu, özünə intizam və güclü məqsəd tələb edir, buna görə də öyrənməyə başlamazdan əvvəl özünüzə necə öyrənəcəyinizi öyrədin.

2. JavaScript-in əsaslarını öyrənin. Codecademy: JavaScript öyrənin, SnoopCode: JavaScript Dərslikləri, MDN-nin JavaScript Bələdçisi - bu onlayn resurslar qrammatika, növlər, dövrələr, funksiyalar, ifadələr, rəqəmlər, tarixlər, formatlaşdırma və s. əhatə edir.

3. Qabaqcıl dil xüsusiyyətlərini araşdırmağa başlayın. Əsasları öyrəndikdən sonra kitabxanaları və çərçivələri mənimsəməyə başlayın: JQuery, ReactJS, Angular 2, node.js server tərəfində və başqalarında inkişafa imkan verəcəkdir.

4. Öz layihələrinizi yaradın. Pulsuz Kod Düşərgəsi kod göndərə, layihələr yarada və bunun üçün sertifikatlar ala biləcəyiniz tərtibatçılar birliyidir. Əsas odur ki, digər icma üzvlərindən rəy almaq.

Peşəkar inkişaf: təcrübə və daha çox təcrübə

Bir ton ədəbiyyat öyrənə bilərsiniz, ancaq daimi təcrübə olmadan heç nə əldə edə bilməyəcəksiniz.

Hər şeyi bilən, amma heç nə edə bilməyən insana öz işinin ustası demək olmaz.

Proqramlaşdırma, hər hansı digər iş kimi, daimi təcrübə tələb edir. Daha yaxşısı, eyni zamanda öyrənin və məşq edin. Bu yolla siz dərhal nəzəriyyəni praktikada sınaqdan keçirəcək və harada səhv etdiyinizi anlayacaqsınız. Səhvlər də olacaq, inanın. Amma bundan qorxma. Əksinə, səhvsiz heç bir irəliləyiş olmayacaq.

Gününüzü elə planlaşdırın ki, hər gün iki saat dərs vaxtınız olsun. Çox çalışmayın. Fasilə verin və fəaliyyətinizi dəyişdirin. Javascript öyrənmək üçün əladır.

Video dərslərinə baxın, maraqlı məqalələri oxuyun və yadda saxlayın, seminar və konfranslarda iştirak edin, müzakirə edin və fikirlərinizi digər tələbələrlə bölüşün.

Ümumiyyətlə, işiniz çoxdur, amma siz də universitetdə oxuyursunuzsa, vaxtınız olmaya bilər. Beləliklə, həyatınızı asanlaşdırmaq və məqsədinizə çatmaq üçün tələbə xidməti ilə əlaqə saxlamağı təklif edirik.