讲师中心 微信公众号
AI工具推荐 视频效率加速

JavaScript中window对象的成员属性(总结分享)

轻辰君_9649

轻辰君_9649

发布时间:2022-08-05 09:57:23

|

3064人浏览过

|

来源于百家号

转载

本篇文章给大家带来了关于javascript的相关知识,其中主要介绍了window对象的成员属性相关问题,window 对象,是 js 的最顶层对象,其他的 bom 对象都是 window 对象的属性,下面一起来看一下,希望对大家有帮助。

JavaScript中window对象的成员属性(总结分享)

【相关推荐:javascript视频教程、web前端】

一、BOM的概念

1.1 什么是BOM?

BOM:Browser Object Model 是浏览器对象模型,BOM由多个对象构成,其中代表浏览器窗口的window对象是BOM的顶层对象也是核心对象,其他对象都是该对象的子对象。

立即学习“Java免费学习笔记(深入)”;

1.2 BOM包含哪些内容?

浏览器介绍

BOM对象包含

(1)window 对象,是 JS 的最顶层对象,其他的 BOM 对象都是 window 对象的属性。

(2)document 对象,文档对象;

(3)location 对象,浏览器当前URL信息;

(4)navigator 对象,浏览器本身信息;

(5)screen 对象,客户端屏幕信息;

(6)history 对象,浏览器访问历史信息;

在浏览器中,window对象有双重角色,它既是通过javascript访问浏览器窗口的一个接口,又是ECMAScript规定的Global对象。

所有 JavaScript 全局对象、函数以及变量均自动成为 window 对象的成员。

全局变量是 window 对象的属性。

全局函数是 window 对象的方法。

01.png

1.3 BOM和DOM的关系

(1)DOM通过document对象来访问、控制、修改html和xhtml等文档中的内容

(2)BOM通过 window 对象来访问、控制、修改浏览器中的内容

联系:BOM包含DOM。区别:DOM描述了处理网页内容的方法和接口,即操作页面内部

BOM描述了与浏览器进行交互的方法和接口,即操作页面之间

02.png

二、window对象

所有浏览器都支持 window 对象。表示浏览器窗口。

所有 JavaScript 全局对象、函数以及变量均自动成为 window 对象的成员。

全局变量是 window 对象的属性。

全局函数是 window 对象的方法。

2.1 window对象

因为window对象是js中的顶级对象,因此所有定义在全局作用域中的变量、函数都会变成window对象的属性和方法,在调用的时候可以省略window。

例如:

打开窗口 window.open(url); 【等价于open(url);】

关闭窗口 window.close(); 【等价于close();】

获取事件 window.event 【等价于event;】

获取文档 window.document 【等价于document】

03.png

2.2 window对象中常用的属性

2.2.1 window.name

属性:

window.name是window对象的一个属性,默认值为空。

特性:

window.name值在不同的页面(甚至不同域名)加载后依旧存在,

并且可以支持非常长的name值(2MB左右)

04.png

05.png

2.2.2浏览器距离屏幕的距离

window.screenX

window.screenY

06.png

2.2.3 window尺寸属性

outerHeight属性设置或返回一个窗口的外部高度,包括所有界面元素(如工具栏/滚动条)。

outerWidth属性设置或返回窗口的外部宽度,包括所有的界面元素(如工具栏/滚动条)。

innerheight 返回窗口的文档显示区的高度。

innerwidth 返回窗口的文档显示区的宽度。

07.png

2.2.4 document对象

2.2.4 window.navigator对象

window.navigator对象包含大量有关Web浏览器的信息,在检测浏览器及操作系统上非常有用。(这个对象和event一样是一个全局变量,并且是唯一的)

navigator.appCodeName //浏览器代码名的字符串表示

navigator.appName //官方浏览器名的字符串表示

navigator.appVersion //浏览器版本信息的字符串表示

navigator.userAgent //返回和浏览器内核相关的信息

navigator.cookieEnabled //如果启用cookie返回true,否则返回false

navigator.javaEnabled() //如果启用java返回true,否则返回false

navigator.platform //浏览器所在计算机平台的字符串表示

navigator.plugins //安装在浏览器中的插件数组

ps:如果window.navigator.userAgent出现了Mobile,可以确定用户使用的是移动设备。

08.png

2.2.5 Location 对象

  • location.hostname 返回 web 主机的域名

  • location.pathname 返回当前页面的路径和文件名

  • location.port 返回 web 主机的端口 (80 或 443)

  • location.protocol 返回所使用的 web 协议(http: 或 https:)

09.png

search 属性是一个可读可写的字符串,可设置或返回当前 URL 的查询部分(问号 ? 之后的部分)

10.png

2.2.6 screen对象

2.3 window对象中常用的方法

11.png

2.4实例:三级联动菜单

12.png

13.png

14.png

15.png

16.png

javascript-pro
javascript-pro

专注现代 ECMAScript、异步编程、性能优化和全栈的 JavaScript 专家,适用于现代开发

下载

17.png

三、提示框

3.1警告框

18.png

3.2 输入框

prompt(alertMsg,defaultMsg);

表警示框,作用是提示用户信息,该方法执行后根据情况不同返回值略有不同。

a)点击取消,返回值为null

b)没有默认值

如果用户没有输入内容,返回一个空字符串

如果用户输入了内容,返回值为用户输入的内容

c)有默认值

如果用户没有输入内容,返回默认值

如果用户修改了默认,返回值为用户输入的内容

19.png

3.3 确认框

20.png

3.4 实例:自定义右键菜单

21.png

22.png

44.png

45.png

46.png

3.5 实例:放大镜效果

47.png

48.png

49.png

50.png

51.png

52.png

四、间隔调用和延迟调用

4.1 定时器

setInterval(表达式,毫秒数)

语法:var timer = null;

timer = setInterval(需要执行的函数,执行间隔时间ms);

例如:

var timer = null;
timer = setInterval(function(){
console.log('hello world!');
},2000);

总结说明:

  • 要把定时器下边的任务执行完毕后 才会去执行定时器的内容

  • 定时执行中this指向window

  • 每创建一个定时器 就会有一个唯一的id被返回 id从开始 之后累加

53.png

  • 清除定时器时 不仅可以使用变量 也可以使用唯一Id清除

54.png

  • 当定时执行的函数是包含参数时 则应该 将函数和参数 使用引号包裹起来

55.png

首先明确两点:

1.JS 执行机制是单线程。

2.JS的Event loop是JS的执行机制

按照这种的分类方式JS的执行机制是:

异步的编程思想:

首先,判断JS是同步还是异步,同步进入主线程,异步进入Event table

其次,异步任务在Event table中注册函数,当满足特定的条件,被推入Event queue(消息队列)最后,同步任务进入主线程后一直执行,直到主线程空闲后,才会去Event queue中查看是否有可执行的异步任务,如果有就推入主线程中执行。

清除间隔调用

既然间隔调用每隔一段时间就会自动执行一次,那么清除间隔调用就势必存在。

语法:clearInterval(变量标识)

例如:clearInterval(timer);

上述代码就能够将刚刚创建的定时器移除掉,令其不在间隔一段时间后自动再次执行。

注意:

(1)间隔调用的返回值是一个数字队列,因此通过访问数字队列来清除间隔调用也被允许。

56.png

注意:

(2) 如果间隔调用的函数需要传入参数,则间隔调用需要使用如下的方式声明

语法:var timer = null;

timer = setInterval(字符串,执行间隔事件ms);

例如

var timer = null;
function show(words){console.log(words);}
timer = setInterval('show("hello world!")',2000);

(3) 间隔调用不是立即执行,而是在【任务队列中的任务完成后】才执行间隔调用

(4) 因为间隔调用函数的实际执行者是window,因此间隔调用内部的this指向window

4.2 延时器

延迟调用又叫延迟调用函数。是一种能够等待一定时间后在执行的函数。

语法:var timer = null;

timer = setTimeout(需要执行的函数,等待的时间);

例如:

var wait = null;
wait = setTimeout(function(){
console.log('hello world!');
},2000);

根据语法所述,上述代码所表示的含义为:等待2s后打印一句【hello world!】

注意:延迟调用除了在语法上和间隔调用略有不同外,其余语法均相同。

57.png

(1)阅读下列代码,口算打印结果

setInterval(function () {console.log(1111);},0);setTimeout(function () {console.log(2222);},0);

(2)阅读下列代码,口算打印结果

var div = document.getElementsByTagName("div").item(0); div.onclick = function () { setTimeout(function () {console.log(this);}, 1000); };

4.4 实例:时间走动

58.png

59.png

4.5 实例:倒计时

60.png

61.png

4.6 实例:进度条的加载

62.png

63.png

64.png

【相关推荐:javascript视频教程、web前端】

相关文章

java速学教程(入门到精通)
java速学教程(入门到精通)

java怎么学习?java怎么入门?java在哪学?java怎么学才快?不用担心,这里为大家提供了java速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载

相关标签:

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热门AI工具

更多
蛙蛙写作

一款AI论文写作工具,主要用于超级AI智能写作助手,适合需要提升相关任务效率的用户。

SkildArt
SkildArt Hot

SkildArt是一款AI文本写作工具,一站式 AI 视觉创作平台。

豆包大模型

豆包大模型是一款由字节跳动推出的企业级大语言模型服务平台。

立刻MV
立刻MV Hot

立刻MV是一款AI文本写作工具,AI 音乐视频(MV)创作工具。

讯飞智作

讯飞智作是一款AI视频创作工具,AI文本配音工具,数字人课程、营销视频制作。

DeepSeek

DeepSeek是一款面向对话、写作、编程和推理场景的AI大模型工具。

WorkBuddy

一款AI办公效率工具,主要用于腾讯云推出的AI原生桌面智能体工作台,适合需要提升相关任务效率的用户。

Laper
Laper Hot

Laper是专为编剧、导演和制片人推出的 AI 原生剧本创作工具。

创客贴AI

创客贴AI是一款AI图像与设计工具,AI辅助的智能在线设计工具。

相关专题

更多
c语言中null和NULL的区别
c语言中null和NULL的区别

c语言中null和NULL的区别是:null是C语言中的一个宏定义,通常用来表示一个空指针,可以用于初始化指针变量,或者在条件语句中判断指针是否为空;NULL是C语言中的一个预定义常量,通常用来表示一个空值,用于表示一个空的指针、空的指针数组或者空的结构体指针。

549

2023.09.22

java中null的用法
java中null的用法

在Java中,null表示一个引用类型的变量不指向任何对象。可以将null赋值给任何引用类型的变量,包括类、接口、数组、字符串等。想了解更多null的相关内容,可以阅读本专题下面的文章。

1698

2024.03.01

cookie
cookie

Cookie 是一种在用户计算机上存储小型文本文件的技术,用于在用户与网站进行交互时收集和存储有关用户的信息。当用户访问一个网站时,网站会将一个包含特定信息的 Cookie 文件发送到用户的浏览器,浏览器会将该 Cookie 存储在用户的计算机上。之后,当用户再次访问该网站时,浏览器会向服务器发送 Cookie,服务器可以根据 Cookie 中的信息来识别用户、跟踪用户行为等。

12399

2023.06.30

document.cookie获取不到怎么解决
document.cookie获取不到怎么解决

document.cookie获取不到的解决办法:1、浏览器的隐私设置;2、Same-origin policy;3、HTTPOnly Cookie;4、JavaScript代码错误;5、Cookie不存在或过期等等。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

1246

2023.11.23

阻止所有cookie什么意思
阻止所有cookie什么意思

阻止所有cookie意味着在浏览器中禁止接受和存储网站发送的cookie。阻止所有cookie可能会影响许多网站的使用体验,因为许多网站使用cookie来提供个性化服务、存储用户信息或跟踪用户行为。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

844

2024.02.23

cookie与session的区别
cookie与session的区别

本专题整合了cookie与session的区别和使用方法等相关内容,阅读专题下面的文章了解更详细的内容。

1946

2025.08.19

全局变量怎么定义
全局变量怎么定义

本专题整合了全局变量相关内容,阅读专题下面的文章了解更多详细内容。

4925

2025.09.18

python 全局变量
python 全局变量

本专题整合了python中全局变量定义相关教程,阅读专题下面的文章了解更多详细内容。

2070

2025.09.18

Vite 项目如何打包和部署
Vite 项目如何打包和部署

Vite项目打包部署专题汇集生产构建、产物预览、输出目录、资源路径、Nginx与GitHub Pages部署及常见白屏和路由404问题的已审核文章,帮助读者完成上线流程。

100

2026.10.28

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
WebStorm 官方调试文档
WebStorm 官方调试文档

共0课时 | 0人学习

React 教程
React 教程

共58课时 | 12.4万人学习

TypeScript 教程
TypeScript 教程

共19课时 | 6.8万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn