JavaScript Window对象
在JavaScript中,Window对象是浏览器对象模型(BOM)的核心。它代表浏览器的窗口,是所有JavaScript全局对象、函数和变量的顶层容器。了解Window对象对于网页交互和动态内容创建至关重要。
Window对象介绍
Window对象是浏览器中的全局对象,它具有双重角色:
- 它是JavaScript代码的全局作用域对象
- 它代表包含DOM文档的浏览器窗口
当你在JavaScript中声明全局变量或函数时,实际上它们是Window对象的属性和方法。
var message = "Hello World";
console.log(window.message); // 输出: "Hello World"
function sayHello() {
alert("Hello!");
}
window.sayHello(); // 等同于直接调用sayHello()
备注
在全局作用域中,可以省略window
前缀来访问Window对象的属性和方法,因为它是默认对象。
Window对象的常用属性
1. window.document
代表当前加载的文档,是DOM的入口点。
// 修改文档背景颜色
window.document.body.style.backgroundColor = "lightblue";
// 或者简写为
document.body.style.backgroundColor = "lightblue";
2. window.location
提供当前窗口中加载的文档的URL信息,也可用于导航。
// 显示当前URL
console.log(window.location.href); // 输出: 当前页面的完整URL
// 重定向到新页面
window.location.href = "https://www.example.com";
3. window.innerHeight 和 window.innerWidth
提供浏览器窗口内容区域的高度和宽度。
// 获取浏览器窗口的视口尺寸
let height = window.innerHeight;
let width = window.innerWidth;
console.log(`窗口高度: ${height}px, 窗口宽度: ${width}px`);
4. window.localStorage 和 window.sessionStorage
提供存储在浏览器中的键值对数据存储机制。
// localStorage示例 - 数据持久保存
localStorage.setItem("username", "John");
console.log(localStorage.getItem("username")); // 输出: John
// sessionStorage示例 - 数据在会话结束后删除
sessionStorage.setItem("temporaryData", "Some data");
console.log(sessionStorage.getItem("temporaryData")); // 输出: Some data