JS | JS中的global、window以及document对象的区别

目录

一、概念区分:JavaScript中的global对象,window对象以及document对象

1、global对象(全局对象)

2、window对象

3、document对象

二、详解HTML中的window对象和document对象

Window -- 代表浏览器中一个打开的窗口:

对象属性

对象方法

成员对象

document对象 -- 代表整个HTML 文档,可用来访问页面中的所有元素:

对象属性

常用对象方法

body-主体子对象

主体子对象属性

常用对象事件

location-位置子对象

位置子对象属性

常用对象事件

selection-选区子对象

Selection对象属性

Selection对象的使用方法

Range对象与Selection对象的关系

images集合(页面中的图象):

a)通过集合引用

b)通过nane属性直接引用

c)引用图片的src属性


一、概念区分:JavaScript中的global对象,window对象以及document对象

1、global对象(全局对象)

《JS高级程序设计》中谈到,global对象可以说是ECMAScript中最特别的一个对象了,因为不管你从什么角度上看,这个对象都是不存在的。从某种意义上讲,它是一个终极的“兜底儿对象”,换句话说呢,就是不属于任何其他对象的属性和方法,最终都是它的属性和方法。我理解为,这个global对象呢,就是整个JS的“老祖宗”,找不到归属的那些“子子孙孙”都可以到它这里来认祖归宗。所有在全局作用域中定义的属性和函数,都是global对象的属性和方法,比如,isNaN()、parseInt()以及parseFloat()等,实际都是它的方法;还有就是常见的一些特殊值,如:NaN、undefined等都是它的属性以及一些构造函数Object、Array等也都是它的方法。总之,记住一点:global对象就是“老祖宗”,所有找不到归属的就都是它的。

2、window对象

前面说了global对象是“老祖宗”,那有人该问了,你把window对象置于何地呢?对,javascript这门语言现在这么红火很大部分原因是因为W3C将它作为写页面的官方脚本语言,但别忘了js它不仅仅可以用来写页面,也就是不仅仅可以用在浏览器中。window对象是相对于web浏览器而言的,它并不是ECMAScripta规定的内置对象,内置对象的定义是:“由ECMAScript实现提供的、不依赖于宿主环境的对象,这些对象在ECMAScript程序执行之前就已经存在了。”window对象是宿主对象也就是在一定的环境中才会生成的对象(这里也就是指浏览器),而global对象是在任何环境中都存在的。window对象具体也就是指浏览器打开的那个窗口。

小结:‌window对象 和 global对象的主要区别在于它们的定义、作用范围以及存在的环境。‌

  • 定义和作用范围‌:

    • global对象‌:global对象是ECMAScript规定的一个全局对象,它存在于任何环境中,不依赖于特定的宿主环境。所有在全局作用域中定义的属性和函数都是global对象的属性和方法‌12。
    • window对象‌:window对象是特定于浏览器环境的对象,它是ECMAScript在浏览器中的实现。window对象代表一个浏览器窗口,包含了浏览器提供的API,如操作浏览器窗口和文档的方法和属性‌。
  • 存在的环境‌:

    • global对象‌:作为一个单体内置对象,global对象不依赖于任何特定的宿主环境,因此在任何环境中都可以存在‌。
    • window对象‌:window对象依赖于浏览器环境,是宿主对象,只有在浏览器中才会存在。它是ECMAScript在浏览器中的具体实现,代表了浏览器窗口‌
3、document对象

简单来说,document对象是window对象的一个属性,是显示于窗口内的一个文档。而window对象则是一个顶层对象,它不是另一个对象的属性。document可以理解为文档,就是你的网页,而window是你的窗口,就是你的浏览器包含的。它们俩在没有框架的情况下可以说是等同的,在有框架的情况下就要区别对待了。

二、详解HTML中的window对象和document对象

Window -- 代表浏览器中一个打开的窗口:
对象属性
window; //窗口自身
window.self; //引用本窗户window=window.self
window.name; //为窗口命名
window.defaultStatus; //设定窗户状态栏信息
window.location; //URL地址,配备布置这个属性可以打开新的页面
对象方法
window.alert("text");
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

儒雅的烤地瓜

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值