`strict mode` sa JavaScript

`strict mode` sa JavaScript

Ipinaliliwanag ng artikulong ito ang strict mode sa JavaScript.

YouTube Video

strict mode sa JavaScript

Sa JavaScript, ang strict mode ay isang tampok na ipinakilala sa ECMAScript 5 (ES5) upang gawing mas ligtas ang code at maiwasan ang mga pagkakamali. Sa paggamit ng strict mode, ang ilang maluwag na syntax at mga posibleng mapanganib na tampok ay hindi pinapagana, at mas mahigpit na pag-check ng error ang pinapatupad. Pinapayagan nito ang mga developer na maiwasan ang di-inaasahang pag-uugali at magsulat ng mas matatag at high-performance na code.

Pag-enable ng strict mode

Upang paganahin ang strict mode, idagdag ang sumusunod na direktiba sa simula ng iyong code.

1"use strict";

Ang deklarasyong ito ay maaaring ilapat sa buong script o sa bawat funcion. Halimbawa, kung ilalapat sa buong script, maaari mo itong isulat tulad nito:.

1"use strict";
2
3function example() {
4    // Strict mode is applied
5}

Kung ilalapat sa bawat function, maaari mo itong isulat tulad nito:.

1function example() {
2    "use strict";
3    // Strict mode is applied only within this function
4}

Ang strict mode ay nalalapat sa bawat scope, kaya maaari rin itong paganahin sa loob ng isang function. Gayundin, dahil naka-enable ang strict mode bilang default sa mga module, hindi mo na kailangang ideklara ito nang paisa-isa sa loob ng module.

Pangunahing katangian at pagkakaiba ng strict mode

Binabago ng paggamit ng strict mode ang ilang default na pag-uugali ng JavaScript. Narito ang mga pangunahing halimbawa.

Pagbabawal ng implicit na global variables

Sa regular na JavaScript, ang hindi paglalahad ng deklarasyon ng variable ay awtomatikong nagtatakda ng mga ito bilang global na variable, ngunit sa strict mode, magreresulta ito sa error.

1"use strict";
2
3x = 10;  // Error: x is not defined

Ang mga variable ay palaging kailangang ideklara gamit ang var, let, o const.

Paghihigpit sa paggamit ng reserved words

Ang mga potensyal na hinaharap na keyword ng JavaScript (hal., implements, interface, package, atbp.) ay hindi maaaring gamitin bilang pangalan ng variable o function sa strict mode.

1"use strict";
2
3var package = "strict mode";  // Error: Unexpected strict mode reserved word

Mga pagbabago sa pag-uugali ng this

Sa normal na mode, ang this sa loob ng isang function ay tumutukoy sa global object (hal., window sa mga browser), ngunit sa strict mode, ang this ay undefined.

1"use strict";
2
3function example() {
4    console.log(this);  // undefined
5}
6
7example();

Nakakatulong ito upang maiwasan ang mga bug na dulot ng maling paggamit ng this.

Pagbabawal ng pag-delete ng mga property na hindi matatanggal

Sa normal na mode, ang pagtatangka na tanggalin ang mga non-deletable na property ng object ay binabalewala nang walang error, ngunit sa strict mode, ito ay magbubunga ng error.

1"use strict";
2
3var obj = Object.freeze({name: "John"});
4delete obj.name;  // Error: Cannot delete property 'name'

Pagbabawal ng magkaparehong pangalan ng parameter

Sa normal na mode, pinapayagan ang pagdedeklara ng mga parameter na may parehong pangalan nang maraming beses, ngunit sa strict mode, magreresulta ito sa error.

1"use strict";
2
3function example(a, a) {
4    // Error: Duplicate parameter name not allowed in this context
5}

Pagbabawal ng with na pahayag

Ang with na pahayag ay maaaring magpababa ng readability ng code at hindi pinapayagan sa strict mode.

1"use strict";
2
3with (Math) {
4    // Error: Strict mode code may not include a with statement
5}

Mga kalamangan ng strict mode

Pinapabuti ng strict mode ang kaligtasan at kahusayan ng code sa maraming paraan.

Mas pinahusay na pagtukoy ng error

Sa strict mode, ang mga error na hindi napapansin sa normal na mode ay natutukoy, na nagbibigay-daan sa mga developer na ma-detect agad ang mga potensyal na bug. Halimbawa, pinipigilan nito ang paglikha ng hindi sinasadyang global na mga variable at maling paggamit ng mga reserved na salita.

Pinahusay na kakayahan (performance)

Sa strict mode, mas mahusay na naa-optimize ng JavaScript engines ang code. Bilang resulta, maaaring bumilis ang bilis ng pagtakbo ng code.

Pinahusay na seguridad ng code

Ang paghawak sa this ay nagiging mas mahigpit, na pumipigil sa pag-access sa hindi kinakailangang mga global object, at sa gayon ay pinapabuti ang seguridad ng code. Bukod pa rito, ang paghihigpit sa paggamit ng mga reserved na salita ay nag-iiwas sa mga potensyal na salungatan sa mga keyword sa hinaharap.

Pagkakatugma at mga konsiderasyon

Ang strict mode ay ipinakilala sa ECMAScript 5 at hindi sinusuportahan sa mga browser na inilabas bago ito. Gayunpaman, ang pag-enable ng strict mode ay simpleng binabalewala ng mga hindi sumusuportang browser, nang hindi sinisira ang script. Samakatuwid, karaniwang maaari itong gamitin nang ligtas.

Kapag ipinakilala ang strict mode sa isang malaki at umiiral na proyekto, mahalagang magsagawa ng masusing pagsusuri upang maiwasan ang hindi inaasahang mga error.

Konklusyon

Ang strict mode ng JavaScript ay isang napaka-kapaki-pakinabang na tampok para mapabuti ang kalidad ng code. Partikular, para sa malalaking proyekto o pagbuo ng team, inirerekomenda ang aktibong paggamit ng strict mode upang maiwasan ang mga di-inaasahang bug at error, at upang mapahusay ang pagiging madaling unawain at maayos ng code.

Ang pag-unawa at maayos na paggamit ng strict mode ay nakakatulong upang maiwasan ang mga pagkakamali sa JavaScript at nagbibigay-daan sa mas ligtas at mas mahusay na pag-develop.

Maaari mong sundan ang artikulo sa itaas gamit ang Visual Studio Code sa aming YouTube channel. Paki-check din ang aming YouTube channel.

YouTube Video