Tìm hiểu Strict mode trong javascript

Thứ sáu - 13/09/2024 23:34
Bài viết này sẽ giới thiệu cơ bản về Strict mode dùng để làm gì trong javascript là gì?
Javascript call back
Javascript call back
strict mode -> chế độ nghiêm ngặt, hiểu đơn giản là giúp các bạn code an toàn hơn, tức là khi chúng ta bật chế độ này lên trong một số TH giúp các bạn tránh khỏi những cái lỗi sơ ý có thể nó có thể xảy ra và đây là 1 tính năng được ra mắt từ phiên bản ES6 và sau đây em sẽ đưa ra một số ví dụ cụ thể để có thể hiểu strict-mode nó sinh ra để giải quyết vấn đề gì?
1 biến global chỉ được giải phóng chi chương trình của chúng ta ngừng lại
đây là một vấn đề tiềm ẩn có thể rò rò bộ nhớ hoặc lỗi logic tìm ẩn hoặc trùng với một biến nào đó đã được tạo ra dẫn đến cho chúng ta debug khó khăn
"use strict" hay strict mode trong Javascript? 
"use strict" -> nhằm sinh ra để giải quyết những vấn đề gì
"use strict" --> luôn phải để đầu phạm vi
1. Thêm "use strict"; vào đầu file .js
2. Thêm "user strict"; vào ngay sau thẻ mở <script>
3. Thên "user strict"; vào đầu phạm vi hàm
Đặc trưng:
+ Không thể khai báo biến mà không sử dụng từ khoá var, let, const
+ Báo lỗi khi gán lại giá trị cho thuộc tính có writable: false: Object.freeze({
    fullname: 'Nguyễn Văn A'
});
student.fullName = 'Nguyễn  Văn B';
+ Báo lỗi khi hàm có tham số trùng tên
+ Khai báo hàm trong code block thì hàm sẽ thuộc phạm vi code block
+ Không đặt tên biến, tên hàm bằng một số từ khoá "nhạy cảm" của ngôn ngữ
Công dụng:
1. Tranh "quên" từ khoá khai báo biến
2. Tránh trùng tên biến lẫn tới logic
3. Sử dụng bộ nhớ hiệu quá vì tránh tạo biến global
const  student = {
    fullName: 'Nguyễn Văn A'
}
student.fullName = 'Nguyễn Văn Lâm'; // Writable => true
const student = Object.freeze({
    fullName: 'Nguyễn Văn A';
});
const student = {};
const student = {
    'fullName' : ''
};
nhưng nó vẫn phải trọc vào cái object để nó defind
Object.defineProperty(student, 'fullName', {
    value: 'Nguyễn Văn A'.
    writable: true,
});
student.fullName = 'Nguyễn Văn Lâm'; // Writable => true
function sum(a, a) {
    return a + a;
}
console.log(sum(1, 2));
// có 1 code block như này
{
    function sum(a, b) {
        return a + b;
    }
}
console.log(sum(1, 2));

Tác giả: admin

 Tags: strict mode

Tổng số điểm là: 0 sau 0 lượt xếp hạng