Co robi dyrektywa „Użyj ścisłej” w JavaScript

Co robi dyrektywa „Użyj ścisłej” w JavaScript

JavaScript ewoluował przez długi czas, nie mając problemów z kompatybilnością i zmodyfikował poprzez dodanie nowych funkcji, ale nie zmieniając starych funkcji. Miał swoje zalety i wady, a zaletą było to, że nie pozwoliło na złamanie istniejącego kodu, jednak wadą było to, że wszelkie błędy popełnione przez programistów lub twórców utknęły w JavaScript na zawsze.

Kontynuował, dopóki EcMascript 5 (zwany również ES5) nie został wprowadzony w 2009 roku. Jednak domyślnie w JavaScript te modyfikacje są wyłączone. Należy włączyć go za pomocą specjalnego przesłania lub polecenia, które jest „użyj ścisłej”.

Co jest „użyj ścisłego”

Podstawową definicją „Użyj ścisłej” jest to, że umożliwia JavaScript uruchamianie kodu w trybie ścisłym. Tryb ścisłego to coś, w którym nie można używać niezgłoszonych zmiennych. Tryb ścisłego pomaga nam również uniknąć możliwych błędów/błędów, jeśli nie właściwie przestrzegaliśmy składni JavaScript. Pomaga nam również, gdy tworzymy literówki, co powoduje, że niechciana nowa zmienna. Możemy również powiedzieć, że podstawowym celem trybu ścisłego jest sprawienie, aby nasz kod wyglądał czystszy.

Powszechnie wspierane?

Należy pamiętać, że korzystanie z Surree nie jest powszechnie wspierane przez przeglądarki. Większość nowoczesnych przeglądarek obsługuje „Użyj Strict”, z wyjątkiem Internet Explorer 9 i wersji poniżej 9. Poniższe przeglądarki z powyższymi wersjami lub określone wersje obsługują „Użyj ścisłej”.

Mozilla Firefox Edge Internetu Google Chrome Opera Safari
4.0 10.0 13.0 12.1 6.0

Składnia trybu ścisłego

Możemy zaimplementować lub zadeklarować Użyj SCRIC, dodając u góry funkcji lub kodu, słowo kluczowe „użyj ścisłej” w dokładny sposób. Jeśli ogłosimy to na górze naszego kodu, będzie miał globalny zakres, co oznacza, że ​​cały nasz kod JavaScript będzie wykonywany w trybie ścisłym.

Zobaczmy dwa przykłady. W pierwszym przykładzie użyjemy niezgłoszonej zmiennej bez użycia „Użyj ścisłej”. W drugim przykładzie użyjemy trybu ścisłego w ten sam sposób.

Przykład 1:

name = "Linux wskazówka";
konsola.log (nazwa);

Wyjście: wskazówka Linux

Przykład 2:

„Użyj ścisłego”;
name = "Linux wskazówka";
// spowoduje to błąd, którego nazwa nie jest zdefiniowana

"Nazwa nie jest zdefiniowana„Błąd zostanie spowodowany w powyższym scenariuszu.

Rzućmy okiem na inny przykład, w którym tryb ścisłego jest używany w funkcji. „Użyj ścisłego” zakresu będzie funkcjonalny I-E ograniczony do funkcji.

Przykład 3:

funkcja myFunc ()
„Użyj ścisłego”;
y = 4;
// to spowoduje błąd
// Błąd będzie taki, że y nie zostanie zdefiniowane

myfunc ();

W tym przykładzie pierwsza „nazwa” zmiennej nie będzie miała błędu, ponieważ nie używamy trybu ścisłego. Jednak w funkcji zostaniemy pokazane, że błąd „y” nie jest zadeklarowany, ponieważ używamy trybu „Użyj ścisłego”. Pozwól mi ponownie podkreślić, że w tym przykładzie zakres trybu ścisłego jest ograniczony do funkcji „myfunc ()”.

Dlaczego warto korzystać z trybu ścisłego?

Teraz, gdy przyjrzeliśmy się składni trybu ścisłego i niektórych przykładów, zbadajmy pytanie, dlaczego użyj trybu ścisłego?

Powalem korzystania z trybu ścisłego jest to, że sprawia, że ​​nasz kod jest oczyszczający, jak wspomniano wcześniej. Również tryb ścisłego pomaga nam pisać bezpieczny JavaScript. Często ignorujemy złą składnię. Może to powodować problemy później. Tryb ścisłego pomaga nam w przekształcaniu nieformalnego/złego kodu składni w prawdziwe błędy, abyśmy mogli odpowiednio je obsłużyć.

W przykładzie 1 widzieliśmy, że nie zadeklarowaliśmy zmiennej, ale konsola JavaScript nie rzuciła żadnych błędów. Traktował zmienną „nazwę” jako zmienną globalną. W trybie ścisłym unikamy tego, ponieważ tryb ścisłego rzuca błąd, którego nazwa nie jest zdefiniowana. Pomaga nam to unikać przypadkowego deklarowania zmiennych globalnych w naszym kodzie.

Ograniczenia w trybie ścisłym

Omówmy to, co jest niedopuszczalne lub niedozwolone w trybie ścisłym. Z przykładu widać, że nie możemy użyć zmiennej w trybie ścisłym, jeśli nie jest ona zdefiniowana ani zadeklarowana. To samo dotyczy obiektów. Musimy zadeklarować obiekty w trybie ścisłym, w przeciwnym razie otrzymamy błąd.

Przykład 4:

„Użyj ścisłego”;
język =
Po pierwsze: „angielski”,
Po drugie: „Chińczycy”
;
// To rzuci nam błąd, ponieważ obiekt „język” nie jest zdefiniowany

Tryb ścisłego nie pozwala nam również usunąć zmiennej lub funkcji.

Przykład 5:

„Użyj ścisłego”;
const pi = 3.143;
usuń pi;
// to spowoduje błąd
funkcja myFunc ()
//Witaj świecie

Usuń myfunc;
// to spowoduje błąd

Oprócz tego tryb ścisłego ogranicza nas do używania słów kluczowych zarezerwowanych w przyszłych wersjach JavaScript lub obecnie korzystania z. Na przykład nie możemy używać narzędzi, let, opakowania, interfejsu, plonu, statycznego, chronionego, publicznego, prywatnego, argumentów itp.

Słowo kluczowe „to” w trybie ścisłym

Słowo kluczowe „to” jest używane w JavaScript w odniesieniu do obiektu, do którego należy. „To słowo kluczowe” zachowuje się inaczej w trybie ścisłym. Załóżmy, że używasz niezgłoszonego obiektu za pomocą „tego”. JavaScript zwróci „niezdefiniowane” w trybie ścisłym, a nie obiektem.

Przykład 6:

„Użyj ścisłego”;
funkcja myFunc ()
alert (this);
// to pokaże nam ostrzeżenie niezdefiniowane

// wywoływanie funkcji teraz
myfunc ();

Wniosek

Używanie słów kluczowych Surowe pomaga programistom JavaScript w uruchomieniu kodu JavaScript w trybie ścisłym, a tym samym ograniczając stosowanie niezgłoszonych zmiennych i pomaga programistom, unikając możliwych błędów lub błędów.

Studiowaliśmy dyrektywę „Użyj ścisłej” w tym poście i omówiliśmy, w jaki sposób i dlaczego korzystać z dyrektywy „Użyj ścisłej”, a także omówić, przeglądarkę, która obsługuje tryb ścisłego. Pakieliśmy pojęć przy użyciu przykładów. Studiując ten artykuł, wiemy, jak sprawić, by nasz kod czyszczy i jak unikać niepotrzebnych zmiennych globalnych przy użyciu „użycia surowego”. Pozwólcie, że znów podkreśliłem fakt, że jeśli pracujesz z „Użyj ścisłej”, zawsze zadeklaruj go u góry bloku kodu lub górnej części funkcji, aby działała.