Hướng dẫn what is the disadvantage of using innerhtml in javascript choose one? - nhược điểm của việc sử dụng innerhtml trong javascript là gì?


HTML là viết tắt của ngôn ngữ đánh dấu siêu văn bản, thông qua HTML, chúng tôi có thể thiết kế một khối trang web. HTML là ngôn ngữ đánh dấu frontend được sử dụng để xây dựng nội dung của các trang frontend. Nó có nghĩa là chúng ta có thể xây dựng một cấu trúc của các trang web. stands for Hyper Text Markup Language, through the HTML we can design a block of webpages. Html is a frontend markup language that is used to build the content of frontend pages. It means that we can build a structure of web pages.

Thông qua HTML, chúng tôi có thể thiết kế nội dung của bất kỳ trang web nào. Điều đó có nghĩa là chúng ta có thể tạo các tiêu đề, nút, đoạn văn, tiêu đề, chân trang, liên kết, vv cho bất kỳ trang web nào.

Thí dụ

Hãy để cố gắng hiểu để thực hiện một chương trình -

<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Basic of HTML</title> </head> <body> <h2>H1 Heading </h2> <p>This is a paragraph </p> <a href = "#">Link</a> <br><br> <button>Button</button> <footer>This is a footer</footer> </body> </html>

Trong chương trình trên, chúng tôi đã tạo ra một tiêu đề, đoạn văn, liên kết, thẻ phá vỡ, nút và chân trang. Như bạn có thể thấy trong chương trình trên, chúng ta có thể viết một chương trình HTML, theo các cách sau.

HTML bên trong

HTML bên trong giống như một thuộc tính của mỗi phần tử HTML. Điều đó có nghĩa là hãy để nói rằng chúng tôi đã tạo một thẻ Div trong HTML và bên trong thẻ Div, chúng tôi đã tạo thẻ đoạn văn sau đó chúng tôi có thể nói rằng thẻ đoạn văn là một HTML bên trong và toàn bộ div là HTML bên ngoài.

Ngoài ra, chúng ta có thể sử dụng InnerHTML trong JavaScript để tìm nạp thuộc tính của bất kỳ thẻ nào bằng cách sử dụng tên thẻ IS, ID hoặc tên lớp.

Sau đây là đoạn mã để hiển thị HTML bên trong -

Hello world

Trong đoạn mã trên, bạn có thể nói rằng toàn bộ thẻ div là HTML bên ngoài và toàn bộ thẻ P là một HTML bên trong.

Thí dụ

Hãy để cố gắng hiểu để thực hiện một chương trình -

<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Basic of HTML</title> </head> <body> <div>Hello <strong>HTML</strong></div> </body> </html>

<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Basic of HTML</title> </head> <body> <h2>H1 Heading </h2> <p>This is a paragraph </p> <a href = "#">Link</a> <br><br> <button>Button</button> <footer>This is a footer</footer> </body> </html>

Trong chương trình trên, chúng tôi đã tạo ra một tiêu đề, đoạn văn, liên kết, thẻ phá vỡ, nút và chân trang. Như bạn có thể thấy trong chương trình trên, chúng ta có thể viết một chương trình HTML, theo các cách sau.

HTML bên trong

HTML bên trong giống như một thuộc tính của mỗi phần tử HTML. Điều đó có nghĩa là hãy để nói rằng chúng tôi đã tạo một thẻ Div trong HTML và bên trong thẻ Div, chúng tôi đã tạo thẻ đoạn văn sau đó chúng tôi có thể nói rằng thẻ đoạn văn là một HTML bên trong và toàn bộ div là HTML bên ngoài.

Ngoài ra, chúng ta có thể sử dụng InnerHTML trong JavaScript để tìm nạp thuộc tính của bất kỳ thẻ nào bằng cách sử dụng tên thẻ IS, ID hoặc tên lớp.

Sau đây là đoạn mã để hiển thị HTML bên trong -

Trong đoạn mã trên, bạn có thể nói rằng toàn bộ thẻ div là HTML bên ngoài và toàn bộ thẻ P là một HTML bên trong.

Hãy cố gắng hiểu với một ví dụ phù hợp -

Thí dụ

Hãy để cố gắng hiểu để thực hiện một chương trình -

<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Basic of HTML</title> </head> <body> <p id= 'demo'>Hello</p> <button onclick="Change()">Change</button> <script> function Change() { let p = document.getElementById('demo'); p.innerHTML = 'Hello World'; } </script> </body> </html>

<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Basic of HTML</title> </head> <body> <h2>H1 Heading </h2> <p>This is a paragraph </p> <a href = "#">Link</a> <br><br> <button>Button</button> <footer>This is a footer</footer> </body> </html>

span. you can see the changes in the output screenshots before the event handler and after the event handler.

Trong chương trình trên, chúng tôi đã tạo ra một tiêu đề, đoạn văn, liên kết, thẻ phá vỡ, nút và chân trang. Như bạn có thể thấy trong chương trình trên, chúng ta có thể viết một chương trình HTML, theo các cách sau.

HTML bên trong

HTML bên trong giống như một thuộc tính của mỗi phần tử HTML. Điều đó có nghĩa là hãy để nói rằng chúng tôi đã tạo một thẻ Div trong HTML và bên trong thẻ Div, chúng tôi đã tạo thẻ đoạn văn sau đó chúng tôi có thể nói rằng thẻ đoạn văn là một HTML bên trong và toàn bộ div là HTML bên ngoài.

Ngoài ra, chúng ta có thể sử dụng InnerHTML trong JavaScript để tìm nạp thuộc tính của bất kỳ thẻ nào bằng cách sử dụng tên thẻ IS, ID hoặc tên lớp.

Sau đây là đoạn mã để hiển thị HTML bên trong -

Thí dụ

Tutorials Point

subject = document.getElementById('#tp') // The whole "tp" tag is reparsed subject.innerHTML += ' Tutorix '

Trong đoạn mã trên, bạn có thể nói rằng toàn bộ thẻ div là HTML bên ngoài và toàn bộ thẻ P là một HTML bên trong.

Hãy cố gắng hiểu với một ví dụ phù hợp -

Trong chương trình trên, như bạn có thể thấy ban đầu, chúng tôi đã tạo một thẻ div và bên trong thẻ div, chúng tôi đã tạo thẻ mạnh. Vì vậy, thẻ div sẽ là HTML bên ngoài và bất cứ điều gì được viết bên trong thẻ div là HTML bên trong.

Nhược điểm của Innerhtml

Hướng dẫn what is the disadvantage of using innerhtml in javascript choose one? - nhược điểm của việc sử dụng innerhtml trong javascript là gì?

Sau đây là những nhược điểm của việc sử dụng HTML bên trong -

  • HTML bên trong chậm
  • HTML bên trong chậm vì khi chúng ta sử dụng thuộc tính HTML bên trong trong mã, nó cho phép chúng ta thay đổi bằng ngôn ngữ JavaScript. Nó rất chậm bởi vì HTML bên trong đã phân tích nội dung thậm chí chúng ta phải phân tích lại nội dung một lần nữa để tại sao nó cần có thời gian.
  • Trình xử lý sự kiện gắn liền với bất kỳ phần tử DOM nào được bảo tồn
  • Khi chúng tôi đã sử dụng trình xử lý sự kiện thì trình xử lý sự kiện không được tự động gắn vào các yếu tố mới được tạo bởi InternalHTML. Để thay đổi điều đó, chúng tôi phải theo dõi các trình xử lý sự kiện và gắn chúng vào một yếu tố mới.
  • Điều đó có nghĩa là trước tiên, chúng ta phải tìm nạp thuộc tính phần tử thông qua bên trong, và sau đó chúng ta phải gắn chúng vào một phần tử mới.
  • Hãy cố gắng hiểu với một ví dụ thích hợp -
  • Như bạn có thể thấy trong chương trình trên trước tiên, chúng tôi tìm nạp phần tử đã được bảo tồn và sau đó chúng tôi gắn chúng thủ công vào nhịp phần tử mới. Bạn có thể thấy những thay đổi trong ảnh chụp màn hình đầu ra trước Trình xử lý sự kiện và sau khi xử lý sự kiện.
  • Một số nhược điểm khác của HTML là -
  • Thay thế được thực hiện ở mọi nơi
  • Khi thuộc tính bên trong được sử dụng để sửa đổi, tất cả các nút DOM sẽ phải được phân tích cú pháp và tạo lại.
  • Không thể nối được nội bộ
  • Trong JavaScript, ‘+= xông thường được sử dụng để nối thêm. Tuy nhiên, khi sử dụng bên trong để nối vào thẻ HTML, toàn bộ thẻ được sắp xếp lại.
  • Phá vỡ tài liệu
  • InsideHTML không cung cấp xác thực thích hợp, do đó, bất kỳ mã HTML hợp lệ nào cũng có thể được sử dụng. Điều này có khả năng phá vỡ tài liệu JavaScript. Ngay cả HTML bị hỏng cũng có thể được sử dụng, có thể gây ra các vấn đề bất ngờ.
  • Được sử dụng cho kịch bản chéo trang
  • Văn bản và hình ảnh hoặc các yếu tố trong trang web có thể được sử dụng bởi tin tặc hoặc người dùng độc hại để thay đổi văn bản hoặc dữ liệu và hiển thị một số nội dung không mong muốn hoặc đe dọa khác nhau bởi thẻ phần tử HTML khác. Điều này dẫn đến thay đổi thông tin nhạy cảm và bí mật.

Tại sao bạn không nên sử dụng InnerHTML trong JavaScript?

Việc sử dụng bên trong tạo ra rủi ro bảo mật tiềm năng cho trang web của bạn. Người dùng độc hại có thể sử dụng kịch bản trang web chéo (XSS) để thêm các tập lệnh phía máy khách độc hại đánh cắp thông tin người dùng riêng được lưu trữ trong cookie phiên.

Việc sử dụng bên trong trong JavaScript là gì?

Thuộc tính bên trong là một phần của mô hình đối tượng tài liệu (DOM) cho phép mã JavaScript thao tác một trang web được hiển thị.Cụ thể, nó cho phép đọc và thay thế mọi thứ trong một phần tử DOM đã cho (thẻ HTML).allows Javascript code to manipulate a website being displayed. Specifically, it allows reading and replacing everything within a given DOM element (HTML tag).

Tác dụng của việc sử dụng InternalHTML là gì?

Đọc bên trong khiến tác nhân người dùng tuần tự hóa đoạn HTML hoặc XML bao gồm hậu duệ của phần tử.Chuỗi kết quả được trả về.Điều này cho phép bạn nhìn vào đánh dấu HTML của các nút nội dung của phần tử.causes the user agent to serialize the HTML or XML fragment comprised of the element's descendants. The resulting string is returned. This lets you look at the HTML markup of the element's content nodes.

Tại sao InnnerHTML không an toàn?

InsideHTML Today là tập lệnh chéo trang (XSS), cho phép người dùng bên ngoài thêm các tập lệnh phía máy khách độc hại vào các trang web sẽ được xem bởi nhiều người dùng.Tin rằng các tập lệnh này là an toàn, trình duyệt của họ sẽ thực hiện chúng, khiến người dùng dễ bị đánh cắp cookie và thông tin cá nhân khác.cross-site scripting (XSS), which allows outside users to add malicious client-side scripts to websites that will be viewed by many users. Believing these scripts to be safe, their browsers will execute them, leaving the user vulnerable to theft of cookies and other personal information.