bom
Window
代表的是整个浏览器的窗口,同时 window 也是网页中的全局对象
setTimeout(() => {}, 1000)
setInterval(() => {}, 1000)
//JSON
/*
-分类:
1.对象{}
2.数组[]
-JSON 中允许的值:
1.字符串
2.数值
3.布尔值
4.null
5.对象
6.数组
*/
JSON.parse()
JSON.stringify()
/*
eval()
-这个函数可以用来执行一段字符串形式的 js 代码,并将执行结果返回
-如果使用 eval() 执行的字符串中含有{},它会将{}当成是代码块,如果不希望将其当成代码块解析,则需要在字符串前后加()
eval() 这个函数功能很强大,可以直接执行一个字符串中的 js 代码
但是在开发中尽量不要使用,首先它的执行性能比较差,然后还具有安全隐患
*/
var str = '{"name":"孙悟空","age":18,"gender":"男"}';
var obj = eval("(" + str + ")");
Navigator
代表的是当前浏览器的信息
navigator.appName
navigator.userAgent //包含浏览器信息
// 如果通过 UserAgent 不能判断,我们可以通过一些浏览器特有的对象,来判断浏览器信息
if('ActiveXObject' in window) {
//ie
}
Location
代表的是当前浏览器的地址栏信息,通过 Location 可以获取地址栏信息或者操作浏览器跳转页面
//如果直接打印 location,则可以获取到地址栏的信息(完整的路径)
alert(location);
/*
如果直接将 location 属性修改为一个完整的路径,或者相对路径
则我们页面会自动跳转到该路径,并且会生成相应的历史记录
*/
location = "http://www.baidu.com";
location.hash //返回从#开始的 url(锚)
location.host //返回主机名和端口号
location.hostname //返回主机名
location.href //返回完整 url
location.pathname //返回路径部分
location.port //返回端口号
location.protocol //返回协议
location.search //返回查询部分
//用来跳转到其他的页面,作用和直接修改 location 一样
location.assign()
//用来重新加载当前页面,作用和刷新按钮一样
//如果在方法中传递一个 true,则会强制清空缓存刷新页面
location.reload()
//可以使用一个新的页面替换当前页面,调用完毕也会跳转页面
//不会生成历史记录,不能使用回退按钮回退
location.replace()
History
代表浏览器的历史记录,可以通过该对象来操作浏览器的历史记录
由于隐私原因,该对象不能获取到具体的历史记录,只能操作浏览器向前或向后翻页,而且该操作只能在当次访问时有效
history.length //获取到当次访问的链接数量
history.back() //可以用来回退到上一个页面
history.forward() //可以用来跳转到下一个页面
history.go(-1) //可以用来跳转到指定的页面
Screen
代表用户的屏幕信息,通过该对象可以获取到用户的显示器的相关信息
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具