Table of contents
Open Table of contents
1. Xử lý Mã hóa URI (URL Encoding)
Khi bạn muốn gửi dữ liệu lên URL mà có chứa ký tự đặc biệt (như dấu cách, tiếng Việt có dấu, hoặc các ký tự &, ?), bạn phải mã hóa chúng:
encodeURI(): Mã hóa một chuỗi thành định dạng URI hợp lệ. Nó bỏ qua các ký tự có ý nghĩa trong URL như/,:,?,&.encodeURIComponent(): Mã hóa toàn bộ các ký tự đặc biệt. Thường dùng để mã hóa giá trị của một tham số (Param).decodeURI()/decodeURIComponent(): Giải mã ngược lại.
2. Các hàm chuyển đổi dữ liệu (Coercion)
Number(): Chuyển đổi giá trị của một đối tượng thành một con số.String(): Chuyển đổi giá trị thành một chuỗi văn bản.parseInt()/parseFloat(): Phân tích chuỗi và trả về số nguyên hoặc số thực.
3. Các hằng số toàn cục đặc biệt
NaN: Viết tắt của “Not-a-Number”. Thường xuất hiện khi bạn thực hiện phép tính toán học lỗi (Ví dụ:10 / "abc").Infinity/-Infinity: Đại diện cho số dương vô cực hoặc âm vô cực.undefined: Giá trị mặc định của một biến khi chưa được gán giá trị.
4. Hàm eval() - “Con dao hai lưỡi”
eval() cho phép thực thi một chuỗi văn bản như thể nó là mã nguồn JavaScript.
let x = 10;
let y = 20;
let result = eval("x + y"); // Trả về 30
⚠️ Lưu ý quan trọng: Hạn chế tối đa việc sử dụng eval() vì nó gây ra lỗ hổng bảo mật nghiêm trọng nếu dữ liệu đầu vào đến từ người dùng.
5. Kiểm tra giá trị hợp lệ
isNaN(): Trả vềtruenếu giá trị kiểm tra không phải là một con số hợp lệ.isFinite(): Kiểm tra xem một giá trị có phải là một số hữu hạn hợp lệ hay không.
Lời kết Tập 11
Hiểu rõ các hàm toàn cục giúp bạn xử lý dữ liệu đầu vào và giao tiếp URL một cách chính xác nhất. Trong Tập 12 - tập cuối cùng của Series Reference, chúng ta sẽ làm quen với “quái vật” RegExp (Regular Expressions).
Hẹn gặp lại các bạn!