Sự khác nhau giữa hai loại là gì?Sự khác nhau giữa Mô hình đối tượng trình duyệt và Mô hình đối tượng tài liệu là gì?
Trả lời
Mô hình đối tượng trình duyệt đại diện cho mọi thứ được trình duyệt cung cấp bao gồm tài liệu, vị trí, lịch sử, khung và bất kỳ chức năng nào khác mà trình duyệt có thể hiển thị với JavaScript. Mô hình đối tượng trình duyệt không được tiêu chuẩn hóa và có thể thay đổi dựa trên các trình duyệt khác nhau.
Mô hình đối tượng tài liệu được chuẩn hóa và cụ thể cho tài liệu HTML hiện tại. Nó được hiển thị bởi Mô hình đối tượng trình duyệt (tức là DOM là tập con của BOM).
Câu trả lời của Sam là chính xác nếu bạn hiểu nghĩa đen của cả hai cụm từ.
Thực tế thuật ngữ "Mô hình đối tượng trình duyệt" không được sử dụng thường xuyên như DOM trong phát triển web và thuật ngữ DOM được sử dụng làm từ đồng nghĩa - ví dụ danh sách các trình cắm sẵn có, trong khi thuộc tính của "trình duyệt", không phải là "tài liệu", là một phần của DOM 0 - navigator.plugins
API.
Ngoài ra, nếu bạn mở tab "DOM" trong Firebug, bạn sẽ thấy đối tượng chung của JavaScript, thuộc về BOM và ít có liên quan đến DOM. – user123444555621
tôi nghĩ rằng BOM=DOM +(-) non standard properties of the browser
. như vậy mỗi trình duyệt có BOM riêng của mình
BOM
Đây là một thuật ngữ không chính thức vì không có W3C hoặc tiêu chuẩn WHATWG đề cập đến nó.
Một định nghĩa đơn giản là BOM bao gồm toàn bộ cấu trúc đối tượng có thể truy cập thông qua tập lệnh trong trình duyệt, bắt đầu với đối tượng window
có chứa mọi thứ khác, vì đó là đối tượng chung.
Đối tượng window
chứa nhiều thuộc tính (hãy thử console.dir(window);
). Các thuộc tính này được chỉ định trong nhiều tiêu chuẩn web. Đặc tả "cốt lõi" của đối tượng window
hiện vẫn được chỉ định trong tiêu chuẩn HTML - see here, nhưng tôi đoán nó chỉ là vấn đề thời gian cho đến khi người chỉnh sửa quyết định chuyển đặc tả này thành một tiêu chuẩn riêng biệt. Tôi chắc chắn sẽ khởi động một chuẩn "BOM" hoặc "Môi trường trình duyệt" để làm cho mọi việc hợp lý hơn và phù hợp hơn.
DOM
Mặt khác là cụm từ chính thức. Bạn có thể tìm thấy các định nghĩa của thuật ngữ này trong các tiêu chuẩn khác nhau, ví dụ các DOM4 tiêu chuẩn quốc gia:
DOM là một vào ngôn ngữ và nền tảng giao diện trung lập cho phép các chương trình và các kịch bản để truy cập tự động và cập nhật nội dung và cấu trúc tài liệu.
Chú ý mức độ nhấn mạnh trên tài liệu. Không giống như BOM về cơ bản và thuật ngữ ô cho tất cả các API trong trình duyệt, DOM chỉ là các API xử lý các tài liệu.
Định nghĩa đơn giản là DOM được triển khai dưới dạng đối tượng document
(là gốc của cây DOM btw). Về cơ bản, cây DOM (và mọi thứ bên trong nó) có thể được coi là một phần của DOM. Tương tự, mọi thứ ngoài DOM-tree không phải là một phần của DOM.
ngoài DOM cây == tất cả các thuộc tính của window
trừ document
đối tượng
HTML5 đã mã hóa nhiều BOM như một đặc tả chính thức. Vì vậy, có một tiêu chuẩn (loại), mà tất cả các trình duyệt chính tuân theo. –
BOM là tầm nhìn rộng hơn của toàn bộ trình duyệt nơi như DOM được ristricted để ghi lại cửa sổ và phương pháp liên quan. xem bài viết đầy đủ javascript-browser-object-model
- 1. Sự khác nhau giữa mô hình dữ liệu và mô hình đối tượng là gì?
- 2. Sự khác nhau giữa đối tượng Mô hình MVC, đối tượng tên miền và DTO
- 3. Sự khác nhau giữa các mô hình ứng dụng hướng đối tượng và tập trung vào dữ liệu là gì?
- 4. DAO mô hình và các đối tượng mô hình
- 5. Sự khác nhau giữa mảng và đối tượng là gì?
- 6. Mô hình tài liệu đối tượng Nodejs cho Redis
- 7. sự khác biệt giữa mô hình chế độ xem và đối tượng truyền dữ liệu là gì?
- 8. Sự khác biệt giữa gói, mô-đun và lớp trong Perl hướng đối tượng là gì?
- 9. Sự khác nhau giữa chương trình thủ tục và chương trình hướng đối tượng là gì?
- 10. Thiết kế đối tượng mô hình Java
- 11. Sự khác biệt giữa đối tượng khẳng định là gì = null và Assert.assertNotNull (đối tượng)?
- 12. Sự khác nhau giữa các đối tượng miền, POCO và các thực thể là gì?
- 13. Truyền đối tượng để xem mô hình
- 14. Xác thực đối tượng mô hình Python
- 15. Windsor Castle/DI và mô hình đối tượng
- 16. Sự khác biệt giữa đối tượng hàm và đối tượng có thể gọi là gì?
- 17. Sự khác biệt giữa đối tượng và *?
- 18. Mô hình đối tượng phân cấp với sự thừa kế thuộc tính và sự kiện bubbling?
- 19. Sự khác nhau giữa các đối tượng Ember và dữ liệu Ember
- 20. Sự khác nhau giữa các tham chiếu và các đối tượng trong java là gì?
- 21. Sự khác nhau giữa JSON và đối tượng JavaScript là gì?
- 22. Đó là đối tượng javascript tốt hơn mô hình
- 23. Sự khác nhau giữa đối tượng và lớp trong PHP?
- 24. Đối với lệnh "bao gồm" cmake, sự khác nhau giữa tệp và mô-đun là gì?
- 25. Sự khác nhau giữa mô hình miền và mô hình khái niệm
- 26. Sự khác nhau giữa đối tượng Trì hoãn và đối tượng lời hứa của riêng nó là gì?
- 27. Sự khác biệt giữa đối tượng bộ đệm khung và đối tượng bộ đệm pixel trong OpenGL là gì?
- 28. Làm cách nào để xác định sự khác biệt giữa mô hình kinh doanh và mô hình dữ liệu?
- 29. Mô hình nhóm từ ứng dụng/đối tượng khác nhau vào một khối Quản trị
- 30. Sự khác nhau giữa một đối tượng và một lớp trong Perl là gì?
Tôi quan tâm đến sự khác biệt giữa các đối tượng nền tảng so với đối tượng trình duyệt (danh sách chọn danh sách thả xuống VS), nhưng điều này cũng thú vị. +1! – nocarrier
[BOM] (http://intellectualpirates.net/web-150/lecture-4-debugging/) bao gồm [Window] (http://www.w3.org/TR/Window/) và [Navigator] (http://devedge-temp.mozilla.org/library/manuals/2000/javascript/1.3/guide/navobj.html) các đối tượng, được sử dụng để truy cập thông tin như [nút quay lại] (http: // www .hunlock.com/blogs/Mastering_The_Back_Button_With_Javascript) và [plugin status] (http://www.webreference.com/js/column20/mimetypes.html) không phụ thuộc vào tài liệu hiện tại được tải trên trang. –