JavaScript "izmantot stingri"

Šajā apmācībā jūs ar piemēriem uzzināsiet par JavaScript 'use range' sintaksi.

'use strict';teikts, ka JavaScript kods jāizpilda “ stingrā režīmā ”. Tas atvieglo laba un droša JavaScript koda rakstīšanu. Piemēram,

 myVariable = 9;

Šeit tiek izveidots myVariable, nedeklarējot. Tas darbojas kā globāls mainīgais JavaScript. Tomēr, ja jūs to izmantojat stingrā režīmā, programma radīs kļūdu. Piemēram,

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

Iepriekš minētais kods rada kļūdu, jo myVariable nav deklarēts. Stingrā režīmā mainīgo nevar izmantot, nedeklarējot tos.

Mēs norādījām, ka šī programma ir stingrā režīmā

 'use strict';

programmas augšpusē.

Stingro režīmu var pasludināt, pievienojot programmu 'use strict';vai "use strict";tās sākumā.

Programmas sākumā paziņojot par stingro režīmu, tā darbības joma būs globāla, un viss programmas kods tiks izpildīts stingrā režīmā.

Stingrais režīms mainīgajā

Stingrā režīmā mainīgā izmantošana, nedeklarējot to, rada kļūdu.

Piezīme . Programmas sākumā jums jāpaziņo stingrais režīms . Ja zem kāda koda pasludināsiet stingru režīmu, tas nedarbosies.

Piemēram,

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

Stingrais režīms darbībā

Funkcijas iekšpusē varat izmantot arī stingru režīmu. Piemēram,

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

Ja izmantojat 'use strict';funkcijas iekšpusē, kods funkcijas iekšpusē būs stingrā režīmā.

Iepriekš minētajā programmā 'use strict';tiek izmantots hello()funkcijas iekšpusē . Tādējādi stingrais režīms ir piemērots tikai funkcijas ietvaros.

Kā redzat, programmas sākumā myVariabletiek izmantots bez deklarēšanas.

Ja deklarējaties 'use strict';programmas augšdaļā, mainīgo nevar izmantot, nedeklarējot to arī funkcijas iekšpusē. Piemēram,

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

Piezīme . Stingrais režīms neattiecas uz bloķēšanas paziņojumiem ar ()iekavām.

Lietas, kas nav atļautas stingrā režīmā

1. Nedeklarēts mainīgais nav atļauts.

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

2. Nedeklarēti objekti nav atļauti.

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

3. Objekta dzēšana nav atļauta.

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

4. Nav atļauts kopēt parametra nosaukumu.

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

5. Piešķirt īpašumam, kas nav rakstāms, nav atļauts.

 '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. Nav atļauts piešķirt tikai labāku īpašumu.

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

7. Piešķirt jaunu īpašumu nepaplašināmam objektam nav atļauts.

 '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. Oktāla sintakse nav atļauta.

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

9. Mainīgā nosaukuma argumenti un eval nav atļauti.

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

10. Jūs nevarat arī izmantot šos rezervētos atslēgvārdus stingrā režīmā.

implements interface let package private protected public static yield

Stingra režīma priekšrocības

Stingra režīma izmantošana:

  • palīdz uzrakstīt tīrāku kodu
  • maina iepriekš pieņemtās klusās kļūdas (slikta sintakse) reālās kļūdās un izmet kļūdas ziņojumu
  • atvieglo "droša" JavaScript rakstīšanu

Interesanti raksti...