在线客服
扫描二维码
下载博学谷APP
扫描二维码
关注博学谷微信公众号
前端浏览器对象模型BOM常用对象介绍,BOM即Broswer Object Model 浏览器对象模型,在JavaScript中可以理解为window对象,用来进行与浏览器相关的一些操作,学习BOM就是学习 JavaScript中的window对象。

一、window对象
BOM的核心对象是 window,它代表浏览器的一个实例。在浏览器中,window有着双重的角色:JavaScript访问浏览器的接口对象,ES中的Global对象意味着网页中的任何一个对象,变量,函数都是以window作为其Global对象。
1、全局作用域,在ECMAScript中,window对象扮演着Global对象的角色,也就是说,所有在全局作用域声明的变量,函数都会变成window的属性和方法,都可以通过 window.属性名(或方法名) 直接调。
2、导航和打开窗口,通过 window.open() 既可以导航到一个特定的URL,也可以打开一个新的浏览器窗口
二、location对象
[^location 是最有用的BOM对象之一,它提供了与当前窗口中加载的文档有关的信息]: JavaScript高级程序设计。
注: window.location 和 document.location?引用的是同一个对象。location 既是 window 对象的属性,也是 document?对象的属性。
三、 navigator对象
navigator 对象主要用来获取浏览器的属性,区分浏览器类型;
navigator 对象属性较多,且兼容性比较复杂。
四、history对象
history 对象保存着用户上网的历史记录,从窗口被打开的那一刻算起,因为 history 是 window 对象的属性,因此每个浏览器窗口,每个标签乃至每个框架,都有自己的 history对象与特定的 window 对象关联。
总结浏览器对象模型BOM中常用的对象有navigator,window, location, history
window既是 JavaScript 的全局对象,也是BOM的一个实例,所有的全局方法,属性,BOM中的属性,都可以通过 window. 来调用;
window作为BOM的实例,最常用的几个方法分别是:window.open(),window.close(),,分别用来打开和关闭浏览器窗口页面,这里需要注意的是,通过 open 方法打开的页面,才能通过close 方法关闭;
location对象也是用的比较多的一个BOM对象,主要用来操作URL相关的一些信息,除了修改 Hash 之外的任何属性,页面都会重新加载,历史记录会多加一条历史记录;
location对象还有一个 reload() 方法用于手动重新加载页面,该方法接收一个可选参数,为 true 的时候表示从服务器重新加载,否则可能从浏览器缓存中重新加载页面;
location对象 还有一个比较特殊的方法,location.replace(),该方法可以覆盖当前页面并重新加载,同时不会在 history 中生成历史记录;
navigator对象主要用来获取浏览器相关的一些信息,使用的时候需要注意兼容性。可以用来获取浏览器类(Chrome,safrai,FireFox,Edge,IE)等;
history对象主要用来操作浏览器URL的历史记录,可以通过参数向前,向后,或者向指定URL跳转。可以通过 length 属性获取记录数,判断当前页面是否是打开的首个页面;
— 申请免费试学名额 —
在职想转行提升,担心学不会?根据个人情况规划学习路线,闯关式自适应学习模式保证学习效果
讲师一对一辅导,在线答疑解惑,指导就业!
相关推荐 更多
Web前端工程师的薪资待遇怎么样?工资有多少?
随着移动时代的来临,负责给用户展现浏览网页的前端工程师渐渐走到了台前,成为互联网公司的重要技术岗位之一。既然前端工程师这么吃香,那么Web前端工程师的薪资待遇怎么样?工资有多少呢?以北京地区的招聘统计数据为例,前端工程师的薪资待遇大概在6K—20K元左右,工作经验和个人能力都是影响工资的重要因素。同时前端还是一个很好的职业跳板,无论是转技术还是管理岗位都有很好的发展前景。
12166
2019-11-04 19:49:48
为什么网站开发要重点考量浏览器兼容性?
作为前端开发工程师,在开发过程中不仅仅要考虑到移动端、小程序、APP等平台及产品,单单在PC端还要考虑各种浏览器的兼容性。为什么同样是浏览器,同样的产品展示的时候回出现不同的效果呢?除了每个浏览器本身开发架构不同之外,主要原因就是浏览器使用的内核不同。
8629
2019-12-03 18:51:40
Flutter入门学习哪些内容?
入门需要学习Dart语言、Flutter控件体系、动画体系、触摸和交互机制、网络编程、数据存储、状态管理等内容。Flutter是Google力推的跨平台框架,可快速在iOS、Android构建高质量的原生用户界面,且完全免费与开源;
8935
2019-12-30 17:57:05
前端开发工程师的必修课——网站重构
网站重构并不是前端开发中的技术,也不是某种标准,而是一种网站前端的理念,也就是我们所理解的页面优化。网站重构是指在不改变网页整体UI设计以及网站外部相关行为的基础上,对整个网站/页面进行优化,让网站的结构更加简单,可读性更强,从而更加有利于搜索引擎的检索,增加搜索引擎对网站的收录,提升网站的排名。网站重构相对于web开发工作而言,更注重用户体验的设计。
7056
2020-08-07 10:30:22
高效的前端开发工具有哪些?
在互联网中许多开发工具可以让前端开发人员的工作生活变得更加轻松。应用程序的功能越来越丰富,也导致了前端开发的复杂度大幅增加,急需好的开发工具。今天和大家分享一些前端开发常用工具,这些工具真的对于提高工作效率有很大的帮助。
5982
2020-12-31 15:32:33
热门文章
- 前端是什么
- 前端开发的工作职责
- 前端开发需要会什么?先掌握这三大核心关键技术
- 前端开发的工作方向有哪些?
- 简历加分-4步写出HR想要的简历
- 程序员如何突击面试?两大招带你拿下面试官
- 程序员面试技巧
- 架构师的厉害之处竟然是这……
- 架构师书籍推荐
- 懂了这些,才能成为架构师 查看更多
扫描二维码,了解更多信息
