„JavaScript“ naudoti griežtai

Šioje pamokoje, naudodamiesi pavyzdžiais, sužinosite apie „JavaScript“ naudokite griežtą sintaksę.

'use strict';teigiama, kad „JavaScript“ kodas turėtų būti vykdomas „ griežtu režimu “. Tai leidžia lengviau parašyti gerą ir saugų „JavaScript“ kodą. Pavyzdžiui,

 myVariable = 9;

Čia „myVariable“ sukurtas nedeklaruojant. Tai veikia kaip visuotinis „JavaScript“ kintamasis. Tačiau jei tai naudosite griežtu režimu, programa sukels klaidą. Pavyzdžiui,

 'use strict'; // Error myVariable = 9;

Aukščiau pateiktas kodas sukelia klaidą, nes „myVariable“ nėra deklaruojamas. Griežtu režimu negalima naudoti kintamojo jų nedeklaravus.

Mes nurodėme, kad ši programa yra griežto režimo

 'use strict';

programos viršuje.

Griežtą režimą galite paskelbti pridėdami programą 'use strict';arba "use strict";jos pradžioje.

Kai programos pradžioje paskelbiate griežtą režimą, jis bus visuotinai pritaikytas ir visas programos kodas bus vykdomas griežtu režimu.

Griežtas režimas kintamuoju

Griežtu režimu naudojant kintamąjį jo nedeklaruojant, išmetama klaida.

Pastaba : Programos pradžioje turite paskelbti griežtą režimą . Jei po tam tikru kodu paskelbsite griežtą režimą, jis neveiks.

Pavyzdžiui,

 console.log("some code"); // 'use strict' is ignored // must be at the top "use strict"; x = 21; // does not throw an error

Griežtas režimas

Funkcijos viduje taip pat galite naudoti griežtą režimą. Pavyzdžiui,

 myVariable = 9; console.log(myVariable); // 9 function hello() ( // applicable only for this function 'use strict'; string = 'hello'; // throws an error ) hello();

Jei naudojate 'use strict';funkcijos viduje, kodas funkcijos viduje bus griežtas.

Pirmiau pateiktoje programoje 'use strict';naudojamas hello()funkcijos viduje . Taigi griežtas režimas taikomas tik funkcijos viduje.

Kaip matote, programos pradžioje myVariableyra naudojamas nedeklaruojant.

Jei deklaruojate 'use strict';programos viršuje, negalite naudoti kintamojo, nedeklaruodami jo ir funkcijos viduje. Pavyzdžiui,

 // applicable to whole program 'use strict'; function hello() ( string = 'hello'; // throws an error ) hello();

Pastaba : griežtas režimas netaikomas blokiniams sakiniams su ()petnešomis.

Griežtu režimu neleidžiami dalykai

1. Nedeklaruotas kintamasis neleidžiamas.

 'use strict'; a = 'hello'; // throws an error

2. Deklaruoti objektai neleidžiami.

 'use strict'; person = (name: 'Carla', age: 25); // throws an error

3. Neleidžiama ištrinti objekto.

 'use strict'; let person = (name: 'Carla'); delete person; // throws an error

4. Neleidžiama kopijuoti parametro pavadinimo.

 "use strict"; function hello(p1, p1) ( console.log('hello')); // throws an error hello();

5. Priskirti prie nerašytino turto negalima.

 'use strict'; let obj1 = (); Object.defineProperty(obj1, 'x', ( value: 42, writable: false )); // assignment to a non-writable property obj1.x = 9; // throws an error

6. Negalima priskirti tik „getter“ turtui.

 'use strict'; let obj2 = ( get x() ( return 17; ) ); // assignment to a getter-only property obj2.x = 5; // throws an error

7. Negalima priskirti naujos nuosavybės neišplečiamam objektui.

 'use strict'; let obj = (); Object.preventExtensions(obj); // Assignment to a new property on a non-extensible object obj.newValue = 'new value'; // throws an error

8. Neleistina aštuonkojo sintaksė.

 'use strict'; let a = 010; // throws an error

9. Kintamojo vardo argumentai ir eval neleidžiami.

 'use strict'; let arguments = 'hello'; // throws an error let eval = 44;

10. Taip pat negalite naudoti šių rezervuotų raktinių žodžių griežtu režimu.

implements interface let package private protected public static yield

Griežto režimo privalumai

Griežto režimo naudojimas:

  • padeda parašyti švaresnį kodą
  • anksčiau priimtas tyliąsias klaidas (blogą sintaksę) pakeičia į tikras klaidas ir išleidžia klaidos pranešimą
  • palengvina „saugaus“ „JavaScript“ rašymą

Įdomios straipsniai...