window 对象有哪些常用的属性和方法?
请列举 window 对象的常见属性和方法,包括窗口控制、定时器、全局对象等。
回答
古法程序员
常用属性:
window.document— 文档对象window.location— URL 信息window.navigator— 浏览器信息window.history— 浏览历史window.screen— 屏幕信息window.localStorage/window.sessionStorage— Web 存储window.console— 控制台window.innerWidth/window.innerHeight— 视口尺寸window.scrollX/window.scrollY— 滚动偏移window.devicePixelRatio— 设备像素比
常用方法:
- 定时器:
setTimeout/setInterval/clearTimeout/clearInterval - 弹窗:
alert()/confirm()/prompt() - 窗口控制:
open(url, name, features)/close()/focus()/blur() - 滚动:
scrollTo(x, y)/scrollBy(x, y)/scroll(options) - 请求动画:
requestAnimationFrame(callback)— 与屏幕刷新率同步 - 空闲回调:
requestIdleCallback(callback)— 浏览器空闲时执行 - 微任务:
queueMicrotask(fn)— 添加微任务 - 跨窗口通信:
postMessage(message, targetOrigin)
注意:在全局作用域中,var 声明的变量会成为 window 的属性,let/const 不会。