JavaScript`də “Use Strict” ifadəsi
--
Dediyim kimi , modern JavaScript məqalələrinə başlayırıq və orta səviyyədən üst səviyyəyə doğru mövzulara toxunacağıq. Bugünkü məqalədə, “use strict” ifadəsini araşdıracağıq.
“Use Strict” ifadəsi , modern JavaScript ilə gələn funksiyalardan biridir və kodlara “sərt qaydalar” gətirir deyə bilərik. Normalda JavaScript , bizim diqqət etmədiyimiz kiçik xətaları görməzdən gəlir , əksik yazdığımız kodları tamamlayır. Kod işlədiyinə görə , biz onu düzgün yazdığımızı düşünürük. Əslində isə bu belə deyil. Sadə bir nümunəyə baxaq :
myNumber = 7;console.log(myNumber) ; // 7
Normal halda bu kodu işlətsək , console`a “7” dəyərini yazacaq. Amma diqqət etsəniz , biz burada myNumber adlı dəyişən yaratmamışıq. Sanki elə bir dəyişənimiz varmış kimi , ona dəyər vermişik. Əslində isə dəyişəni yaratmalıydıq. Bu kod işləyəndə , JavaScript avtomatik olaraq myNumber adlı dəyişəni bizim əvəzimizə yaradır və işimizin rahat olması üçün bizə xəta vermir.
“Use Strict” istifadə etsək ?
Use Strict ifadəsi , hər xırda xətada bizə xəbərdarlıq edir. Yuxarıdaki kimi tamamlamır əksiklərimizi. Kodu yenidən yazaq , Use Strict ilə birlikdə:
Qeyd : Use Strict ifadəsi global olaraq yazılacaqsa , kodların ən üst hissəsinə yazılmalıdır.
"use strict" ;myNumber = 7;
console.log(myNumber) ; // ReferenceError: myNUmber is not defined
Gördüyünüz kimi , Use Strict istifadə etdikdə , myNumber adlı dəyişənin olmadığını qeyd etdi.
Əgər bu ifədini ümumi kodun ən üst hissəsinə yazsaq , bütün kod bu qaydalarla işləyəcək. Çünki global olaraq yazmış olacağıq və kodun bütün hissələrinə təsir edəcək. Amma bəzən elə ola bilər ki , bu qaydaların yalnız müəyyən bir funksiya daxilində keçərli olmasını istəyə bilərik :
myFunction = () => {"use strict" ;
userName = "Jahangir" ; console.log(userName) ;}myFunction(); // ReferenceError: userName is not defined
Strict moduna aid ümumi qaydalara baxaq :
- Dəyişəni yaratmadan ona dəyər vermək istəsəniz , xəta alacaqsız.
- Bu modda dəyişən və ya funksiyanı delete ilə silə bilmərsiz.
- funksiyalarda eyni parametri 2 dəfə istifadə edə bilmərsiz.
- eval() funksiyasını istifadə edə bimərsiz (təhlükəsizlik məsələsidir)
Bu məqalədə Strict mod haqqında qısaca danışdıq. Ümid edirəm ki faydalı oldu. Sualınız olarsa yaza bilərsiz.
./JahangirSeven