Vit Tertiumnon
Làm theo
22 Tháng mười một, 2018
·
1 phút đọc
JavaScript. Cách giải mã và mã hóa các thực thể HTML
JavaScript không có phương thức nào để mã hóa và giải mã các thực thể HTML, vì vậy bạn có thể sử dụng các hàm này
Giải mã thực thể HTML
function decodeHTMLEntities[text] {
var textArea = document.createElement['textarea'];
textArea.innerHTML = text;
return textArea.value;
}
Giải mã thực thể HTML [JQuery]
function decodeHTMLEntities[text] {
return $[""]
.html[text]
.text[];
}
Mã hóa thực thể HTML
function encodeHTMLEntities[text] {
var textArea = document.createElement['textarea'];
textArea.innerText = text;
return textArea.innerHTML;
}
Mã hóa thực thể HTML [JQuery]
function encodeHTMLEntities[text] {
return $[""]
.text[text]
.html[];
}
Các thực thể HTML có thể được giải mã bằng cách sử dụng một số phương pháp khác nhau liên quan đến thư viện JavaScript vanilla hoặc JavaScript. Hướng dẫn này sẽ chỉ đi qua các phương pháp JavaScript cơ bản để giải mã các thực thể HTML vì chúng dễ dàng và đơn giản
Decoding HTML Entities with the DOM Element
Phương pháp đầu tiên là sử dụng phần tử textarea. Như tên gợi ý, phần tử textarea được sử dụng để tạo một vùng văn bản đơn giản trong đó mỗi ký tự được hiểu là văn bản thuần túy đơn giản
giải mã chức năng [ str ] {
để tài liệu txt = . createElement["textarea"];
txt. innerHTML = str ;
trả lại văn bản. giá trị;
}
Trong đoạn mã trên, trước tiên chúng ta tạo phần tử textarea bằng cách sử dụng tài liệu. phương thức createElement[]. Sau đó, chúng tôi đã viết chuỗi chứa các thực thể HTML bên trong vùng văn bản bằng thuộc tính InternalHTML. Bằng cách này, chuỗi sẽ được chuyển đổi thành văn bản đơn giản và các thực thể sẽ được chuyển đổi thành ký tự. Cuối cùng, chúng tôi đã trả về chuỗi được lưu trữ bên trong biến txt là vùng văn bản
Bây giờ nếu chúng ta gọi hàm giải mã với một thực thể HTML làm tham số, nó sẽ trả về nó dưới dạng văn bản đơn giản
let encodedStr = ";
hãy giải mãStr = giải mã [ encodedStr ];
bảng điều khiển. log[ decodedStr ];
Giải mã các thực thể HTML với DOMParser. phương thức parseFromString[]
Phương pháp thứ hai là sử dụng DOMParser. phương thức parseFromString[]. DOMParser. parseFromString[] lấy một chuỗi chứa HTML và trả về nó dưới dạng một phần tử HTML
giải mã chức năng [ str ] {
let txt = new DOMParser [].parseFromString[ str, "text/html"];
trả lại văn bản. Thành phần tài liệu . nội dung văn bản;
}
Trong đoạn mã trên, trước tiên chúng ta chuyển chuỗi dưới dạng đối số cho DOMParser. parseFromString[] và lấy lại nó dưới dạng một phần tử HTML bằng cách chỉ định đối số thứ hai là “text/html”. Sau đó, chúng tôi đã trả về nội dung văn bản của phần tử HTML mới được tạo
Bây giờ gọi hàm giải mã[]
let encodedStr = ";
hãy giải mãStr = giải mã [ encodedStr ];
bảng điều khiển. log[ decodedStr ];
Phần kết luận
Các thực thể HTML là cần thiết để xem đúng văn bản trên các trang web. Một số trang web chứa các đoạn mã dưới dạng văn bản đơn giản. Nếu không có Thực thể, sẽ rất khó để phân biệt đâu là mã HTML cho trang web và đâu chỉ là văn bản thuần túy
Các ký tự dành riêng trong HTML phải được thay thế bằng các thực thể ký tự
Một số ký tự được dành riêng trong HTML
If you use the less than [] signs in your text, the browser might mix them with tags.
Các thực thể ký tự được sử dụng để hiển thị các ký tự dành riêng trong HTML
Một thực thể nhân vật trông như thế này
&entity_name;
HOẶC LÀ
entity_number;Để hiển thị dấu nhỏ hơn [