跳到主要内容

window对象

  • window对象

    • 在浏览器中,浏览器为我们提供了一个window对象,可以直接访问

    • window对象代表的是浏览器窗口,通过该对象可以对窗口进行各种操作,除此之外window对象还负责存储JS中的内置对象和浏览器的宿主对象

    • window对象的属性可以通过window对象访问,也可以直接访问

    • 函数就可以认为是window对象的方法

    • 向window对象中添加的属性会自动称为全局变量

  • var 用来声明变量,作用和let相同,但是var不具有块作用域

    • 在全局中使用var声明的变量,都会作为window对象的属性保存
    • 使用function声明的函数,都会作为window的方法保存
    • 使用let声明的变量不会存储在window,而存在一个秘密的小地方
    • var虽然没有块作用域,但有函数作用域
    • 在局部作用域中,如果没有使用var或let声明变量,则变量会自动成为window对象的属性,也就是全局变量
{
function fn() {
console.log(1);
d = 10; // window.d
}
}

fn(); // 1
window.fn(); // 1
console.log(d); // 10