JavaScript "bruker streng"

I denne veiledningen vil du lære om JavaScript 'bruk streng' syntaks ved hjelp av eksempler.

'use strict';sier at JavaScript-koden skal kjøres i ' streng modus '. Dette gjør det lettere å skrive god og sikker JavaScript-kode. For eksempel,

 myVariable = 9;

Her er myVariable opprettet uten å erklære. Dette fungerer som en global variabel i JavaScript. Imidlertid, hvis du bruker dette i streng modus, vil programmet kaste en feil. For eksempel,

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

Ovennevnte kode kaster en feil fordi myVariable ikke er erklært. I streng modus kan du ikke bruke variabelen uten å erklære dem.

For å indikere at dette programmet er i streng modus, har vi brukt

 'use strict';

øverst i programmet.

Du kan erklære streng modus ved å legge til 'use strict';eller "use strict";i begynnelsen av et program.

Når du erklærer streng modus i begynnelsen av et program, vil den ha globalt omfang, og all koden i programmet vil kjøres i streng modus.

Streng modus i variabel

I streng modus kaster en feil ved å bruke en variabel uten å erklære den.

Merk : Du må erklære streng modus i begynnelsen av programmet. Hvis du erklærer streng modus under noen kode, vil det ikke fungere.

For eksempel,

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

Streng modus i funksjon

Du kan også bruke streng modus i en funksjon. For eksempel,

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

Hvis du bruker 'use strict';inne i en funksjon, vil koden i funksjonen være i streng modus.

I programmet ovenfor 'use strict';brukes inne i hello()funksjonen. Derfor gjelder den strenge modusen bare inne i funksjonen.

Som du kan se, i begynnelsen av programmet, myVariablebrukes uten å erklære.

Hvis du erklærer 'use strict';øverst i programmet, kan du ikke bruke en variabel uten å erklære den også i funksjonen. For eksempel,

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

Merk : Strengt modus gjelder ikke for å blokkere utsagn med ()klammeparenteser.

Ting som ikke er tillatt i streng modus

1. Udeklarert variabel er ikke tillatt.

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

2. Ikke-angitte objekter er ikke tillatt.

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

3. Det er ikke tillatt å slette et objekt.

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

4. Duplisering av et parameternavn er ikke tillatt.

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

5. Det er ikke tillatt å tildele en ikke-skrivbar eiendom.

 '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. Det er ikke tillatt å tildele en eiendom som bare er getter.

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

7. Det er ikke tillatt å tildele en ny eiendom på et ikke-utvidbart objekt.

 '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. Oktalsyntaks er ikke tillatt.

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

9. Argumentene for variabelnavnet og eval er ikke tillatt.

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

10. Du kan ikke bruke disse reserverte nøkkelordene i streng modus.

implements interface let package private protected public static yield

Fordeler med streng modus

Bruk av streng modus:

  • hjelper til med å skrive en renere kode
  • endrer tidligere aksepterte lydfeil (dårlig syntaks) til reelle feil og kaster en feilmelding
  • gjør det lettere å skrive "sikker" JavaScript

Interessante artikler...