Use strict là gì

Chào hầu hết người bây giờ đến tháng mình lại ngoi lên đây

*
hôm nay mình đang share về User Strict là gì ? và giải pháp sử dụng nó nhé

Trong con đôi mắt của tương đối nhiều xây dựng viên, JavaScript là một trong thiết bị khôn xiết lộn xộn. Lập trình JavaScript chẳng khác nào cực hình.

Bạn đang xem: Use strict là gì

Tuy nhiên, JavaScript tất cả cung cấp mang đến thiết kế viên chế độ “use strict“. Bằng vấn đề knhì báo và áp dụng chế độ này, JavaScript sẽ trsinh sống đề nghị chính xác và nghiêm nhặt rộng. Do đó, bạn sẽ tất yêu viết code bừa bến bãi vào cơ chế này.

1. Use strict là gì?Use strict dịch sang giờ đồng hồ việt thì Có nghĩa là áp dụng sự nghiêm nhặt. Lúc một quãng lệnh được knhì báo use strict thì tất cả những mẫu code sinh hoạt bên dưới cái khai báo use strict sẽ tiến hành thống trị một phương pháp ngặt nghèo rộng về cú pháp.

x = 10;console.log(window.x);// => 10Tại cơ chế strict mode, bạn sẽ bị lỗi x không được định nghĩa: Uncaught ReferenceError: x is not definedx = 10;console.log(window.x);// => Uncaught ReferenceError: x is not defined2. Các chặt chẽ của strict mode.-Khi thực hiện strict mode bạn sẽ quan yếu làm cho được thứ tự sau nữa:

Gán quý hiếm mang đến đổi thay chưa được knhì báo.

-Trong chế độ thường xuyên bạn cũng có thể làm như này để gán quý hiếm cho 1 đổi thay không knhì báo

variable = "tranvanmy";console.log(variable);-Nhưng strict mode thì ko thể:

"use strict"variable = "tranvanmy";console.log(variable);Uncaught ReferenceError: variable is not defined-Để khắc chế được điều bên trên thì bạn phải knhị báo trở nên cùng với tự khóa var hoặc let.

"use strict"var variable = "tranvanmy";// orlet variable = "tranvanmy";console.log(variable);

Báo lỗi Khi áp dụng delete.

-Nếu nhỏng sống chính sách thường xuyên thì bạn cũng có thể xóa ngẫu nhiên một đồ vật gì bằng từ bỏ khóa delete, tuy nhiên xóa được hay là không nó cũng ko báo lỗi. Nhưng Lúc thực hiện cơ chế strict mode thì những trang bị quan yếu xóa được nó vẫn báo lỗi ngay lập tức.

Xem thêm: Mua Áo The North Face Ở Đâu Hà Nội, Hcm, Mua Áo The North Face Chính Hãng Ở Đâu

function getMyName (name) console.log(name)delete getMyName;//không có gì xẩy ra tuy nhiên delete không xóa được hàm-Chế độ strict mode:

"use strict"function getMyName (name) console.log(name)delete getMyName;//Uncaught SyntaxError: Delete of an unqualified identifier in strict mode.

Các tđê mê số của hàm không được trùng nhau

-Nếu nlỗi chính sách thường bạn cũng có thể knhị báo các tđam mê số truyền vào hàm được phnghiền trùng nhau thì giờ đây khi áp dụng chế độ strict mode thì nó đang báo lỗi ngay lập tức.

-Chế độ thường:

function getProfile (name, name, age) //code//chạy bình thường.-Chế độ strict mode:"use strict"

function getProtệp tin (name, name, age) //code//Uncaught SyntaxError: Duplicate parameter name not allowed in this context

Không được cho phép knhị báo đổi thay dưới dạng hệ nhị phân.

-Các số knhì báo bên dưới dạng nhị phân hoặc tất cả chi phí tố prefix 0 đằng trước thì sẽ không còn được chấp nhận

-Chế độ thường:

var num = 010100101010101;-Chế độ strict mode:

var num = 01010;//Uncaught SyntaxError: Octal literals are not allowed in strict mode

Không được phnghiền ghi đè lên trực thuộc tính chỉ được phnghiền hiểu.

-Chế độ thường:

var obj = ;Object.defineProperty(obj, "ver", value: 1, writable: false);obj.ver = 10;//không có gì xảy ra-Chế độ strict mode:

"use strict"var obj = ;Object.defineProperty(obj, "ver", value: 1, writable: false);obj.ver = 10;---------Uncaught TypeError: Cannot assign khổng lồ read only property "ver" of object "#" at data.php:14

Không áp dụng được with

-Chế độ thường:

var bar = 1;var foo = 2;with (bar) console.log(foo);//2-Chế độ strict mode:

"use strict"var bar = 1;var foo = 2;with (bar) console.log(foo);//Uncaught SyntaxError: Strict mode code may not include a with statement

Không được cho phép khai báo biến đổi trong eval

-Vì nguyên nhân bảo mật thông tin nên lúc áp dụng strict mode thì bạn sẽ chẳng thể như thế nào rất có thể khai báo được phát triển thành bên trong nó nữa.

"use strict"eval ("var x = 4");console.log(x);//Uncaught ReferenceError: x is not defined

Không chấp nhận knhì báo những keyword

-Ở cơ chế strict mode thì những bạn sẽ ko áp dụng được những từ khóa sau để khai báo làm tên biến hóa, hằng,...

Xem thêm: Sửa Lỗi Bị Mất Màn Hình Desktop Ở Đâu ? 6 Cách “Show Desktop” Siêu Nhanh Cho Windows

implementsinterfaceletpackageprivateprotectedpublicstaticyieldargumentsKết luận

Trên đây là một số trong những lỗi thường xuyên gặp gỡ phải khi bạn sử dụng JavaScript làm việc strict mode. Nói vậy, không Tức là tôi khuyên ổn chúng ta tránh sử dụng strict mode. Ngược lại, chế độ này giúp đỡ bạn dễ dàng phát hiện lỗi. Và đấy là sự đảm bảo an toàn mang lại code các bạn không trở nên xung bất chợt cùng với đa số phiên phiên bản JavaScript mới hơn về sau.


Chuyên mục: Hỏi Đáp