JavaScript:BOM ╰半夏微凉° 2024-04-02 03:31 72阅读 0赞 **目录** 一、BOM介绍 1、BOM的构成 二、window对象常用方法 1、窗口加载事件 2、window.onresize 3、confirm()方法 4、open()方法 5、setTimeout()定时器 6、this的使用 7、JS是单线程 8、JS执行机制 9、URL 10、location对象的属性 11、document对象 12、Date对象 13、navigator 对象 14、history对象 -------------------- ### 一、BOM介绍 ### BOM ( BrowserObject Model ) 即浏览器对象模型,它提供了独立于内容而与浏览器窗口进行交互 的对象,其核心对象是window。 BOM由一系列相关的对象构成,并且每个对象都提供了很多方法与属性。 BOM缺乏标准,JavaScript语法的标准化组织是ECMA,DOM的标准化组织是W3C,BOM最初是 Netscape浏览器标准的一部分。 **BOM与DOM的区别:** <table style="width:500px;"> <tbody> <tr> <td><span style="color:#000000;">DOM</span></td> <td><span style="color:#000000;">BOM</span></td> </tr> <tr> <td><span style="color:#000000;">文档对象模型</span></td> <td><span style="color:#000000;">浏览器对象模型</span></td> </tr> <tr> <td><span style="color:#000000;">DOM就是把「文档」当做一个「对象」来看待</span></td> <td><span style="color:#000000;">把「浏览器」当做一个「对象」来看待</span></td> </tr> <tr> <td><span style="color:#000000;">DOM的顶级对象是document</span></td> <td><span style="color:#000000;">BOM的顶级对象是window</span></td> </tr> <tr> <td><span style="color:#000000;">DOM主要学习的是操作页面元素</span></td> <td><span style="color:#000000;">BOM学习的是浏览器窗口交互的一些对象</span></td> </tr> <tr> <td><span style="color:#000000;">DOM是 W3C标准规范</span></td> <td><span style="color:#000000;">BOM是浏览器厂商在各自浏览器上定义的,兼容性较差</span></td> </tr> </tbody> </table> #### 1、BOM的构成 #### window对象是浏览器的顶级对象,它具有双重角色。 1.它是JS访问浏览器窗口的一个接口。 2.它是一个全局对象。定义在全局作用域中的变默、函数都会变成window对象的属性和方法 在调用的时候可以省略window,前面学习的对话框都属于window对象方法,如alert(、prompt() 等。 注意:window下的一个特殊属性window.name ### 二、window对象常用方法 ### <table style="width:500px;"> <tbody> <tr> <td>方法名</td> <td>说明</td> </tr> <tr> <td> <p style="margin-left:0in;text-align:left;"><span style="color:#000000;">prompt( )</span></p> </td> <td> <p style="margin-left:0in;text-align:left;"><span style="color:#000000;">显示可提示用户输入的对话框</span></p> </td> </tr> <tr> <td> <p style="margin-left:0in;text-align:left;"><span style="color:#000000;">alert( )</span></p> </td> <td> <p style="margin-left:0in;text-align:left;"><span style="color:#000000;">显示带有一个提示信息和</span><span style="color:#000000;">一个</span><span style="color:#000000;">确定按钮的警示框 </span></p> </td> </tr> <tr> <td> <p style="margin-left:0in;text-align:left;"><span style="color:#000000;">confirm</span><span style="color:#000000;">( )</span></p> </td> <td> <p style="margin-left:0in;text-align:left;"><span style="color:#000000;">显示一个</span><span style="color:#000000;">带有提示信息、确定和取消按钮的对话框 </span></p> </td> </tr> <tr> <td> <p style="margin-left:0in;text-align:left;"><span style="color:#000000;">close( )</span></p> </td> <td> <p style="margin-left:0in;text-align:left;"><span style="color:#000000;">关闭浏览器窗口</span></p> </td> </tr> <tr> <td> <p style="margin-left:0in;text-align:left;"><span style="color:#000000;">open( )</span></p> </td> <td> <p style="margin-left:0in;text-align:left;"><span style="color:#000000;">打开一个新的浏览器窗口,加载给定 </span><span style="color:#000000;">URL </span><span style="color:#000000;">所指定的文档</span></p> </td> </tr> <tr> <td> <p style="margin-left:0in;text-align:left;"><span style="color:#000000;">setTimeout</span><span style="color:#000000;">( )</span></p> </td> <td> <p style="margin-left:0in;text-align:left;"><span style="color:#000000;">在指定的毫秒数后调用函数或计算表达式</span></p> </td> </tr> <tr> <td> <p style="margin-left:0in;text-align:left;"><span style="color:#000000;">set</span><span style="color:#000000;">I</span><span style="color:#000000;">nterval</span><span style="color:#000000;">( )</span></p> </td> <td> <p style="margin-left:0in;text-align:left;"><span style="color:#000000;">按照指定的周期(以毫秒计)来调用函数或表达式</span></p> </td> </tr> </tbody> </table> #### 1、窗口加载事件 #### window .onload = function () { }或者 window .addEventListener ( "load" , function ( ) { }); window.onload是窗口(页面)加载事件,当文档内容完全加载完成会触发该事件(包括图像、脚本文 件、CSS文件等),就调用的处理函数。 注意︰ 1.有了window.onload就可以把JS代码写到页面元素的上方,因为onload是等页面内容全部加载完 毕,再去执行处理函数。 2.window.onload传统注册事件方式只能写一次,如果有多个,会以最后一个window.onload为准。 document.addEventListener ( ' DOMContentLoaded' ,function() { } ) DOMContentLoaded事件触发时,仅当DOM加载完成,不包括样式表,图片,flash等等。 如果页面的图片很多的话,从用户访问到onload触发可能需要较长的时间,交互效果就不能实现,必 然影响用户的体验,此时用DOMContentLoaded事件比较合适。 **load与DOWContentLoaded的区别** 1、load 等页面内容全部加载完毕,包含页面dom元素图片 flash css 等等 2、DOWContentLoaded是DOM 加载完毕,不包含图片 falsh css等就可以执行加载速度比load更快一些 #### 2、window.onresize #### window. onresize = function() { } window.addEventListener ( "resize" , function() { }); window.onresize是调整窗口大小加载事件,当触发时就调用的处理函数。 注意∶ 1.只要窗口大小发生像素变化,就会触发这个事件。 ⒉.我们经常利用这个事件完成响应式布局。window.innerWidth当前屏幕的宽度 根据屏幕宽度隐藏和显示盒子 <style> div{ height: 300px; width: 300px; background-color: red; } </style> </head> <body> <script> //添加尺寸变化事件 window.addEventListener('load',function(){ //获取div var div = document.querySelector('div'); window.addEventListener('resize',function(){ //获取屏幕尺寸 console.log(window.innerWidth); console.log('变化了'); if(window.innerWidth <= 800){ //隐藏 div.style.display = 'none'; }else{ //显示 div.style.display = 'block'; } }) }) </script> <div></div> </body> #### **3、confirm()****方法** #### confirm():将弹出一个确认对话框 **语法:** confirm("对话框中显示的纯文本") 示例: <script type="text/javascript"> var flag=confirm("确认要删除此条信息吗?"); if(flag==true) alert("删除成功!"); else alert("你取消了删除"); </script> **confirm()与alert ()、 prompt()区别** 1、alert( ):一个参数,仅显示警告对话框的消息,无返回值,不能对脚本产生任何改变 2、prompt( ):两个参数,输入对话框,用来提示用户输入一些信息,单击“取消”按钮则返回null,单击“确定”按钮则返回用户输入的值,常用于收集用户关于特定问题而反馈的信息 3、confirm( ):一个参数,确认对话框,显示提示对话框的消息、“确定”按钮和“取消”按钮,单击“确定”按钮返回true,单击“取消”按钮返回false,因此与if-else语句搭配使用 #### **4、open()****方法** #### **语法:** window.open("弹出窗口的url","窗口名称","窗口特征”) <table style="width:500px;"> <tbody> <tr> <td>属性名称</td> <td>说明</td> </tr> <tr> <td> <p style="margin-left:0in;text-align:left;"><span style="color:#000000;">height、width</span></p> </td> <td> <p style="margin-left:0in;text-align:left;"><span style="color:#000000;">窗口文档显示区的高度、宽度。以像素计</span></p> </td> </tr> <tr> <td> <p style="margin-left:0in;text-align:left;"><span style="color:#000000;">left、top</span></p> </td> <td> <p style="margin-left:0in;text-align:left;"><span style="color:#000000;">窗口的</span><span style="color:#000000;">x坐标、y坐标</span><span style="color:#000000;">。</span><span style="color:#000000;">以像素计</span></p> </td> </tr> <tr> <td> <p style="margin-left:0in;text-align:left;"><span style="color:#000000;">toolbar=yes | no |1 | 0</span></p> </td> <td> <p style="margin-left:0in;text-align:left;"><span style="color:#000000;">是否显示浏览器的工具栏。黙认是</span><span style="color:#000000;">yes</span></p> </td> </tr> <tr> <td> <p style="margin-left:0in;text-align:left;"><span style="color:#000000;">scrollbars=yes | no |1 | 0</span></p> </td> <td> <p style="margin-left:0in;text-align:left;"><span style="color:#000000;">是否显示滚动条。黙认是</span><span style="color:#000000;">yes</span></p> </td> </tr> <tr> <td> <p style="margin-left:0in;text-align:left;"><span style="color:#000000;">location=yes | no |1 | 0</span></p> </td> <td> <p style="margin-left:0in;text-align:left;"><span style="color:#000000;">是否显示地址地段。黙认是</span><span style="color:#000000;">yes</span></p> </td> </tr> <tr> <td> <p style="margin-left:0in;text-align:left;"><span style="color:#000000;">status=yes | no |1 | 0</span></p> </td> <td> <p style="margin-left:0in;text-align:left;"><span style="color:#000000;">是否添加状态栏。黙认是</span><span style="color:#000000;">yes</span></p> </td> </tr> <tr> <td> <p style="margin-left:0in;text-align:left;"><span style="color:#000000;">menubar</span><span style="color:#000000;">=yes | no |1 | 0</span></p> </td> <td> <p style="margin-left:0in;text-align:left;"><span style="color:#000000;">是否显示菜单栏。黙认是</span><span style="color:#000000;">yes</span></p> </td> </tr> <tr> <td> <p style="margin-left:0in;text-align:left;"><span style="color:#000000;">resizable=yes | no |1 | 0</span></p> </td> <td> <p style="margin-left:0in;text-align:left;"><span style="color:#000000;">窗口是否可调节尺寸。黙认是</span><span style="color:#000000;">yes</span></p> </td> </tr> <tr> <td> <p style="margin-left:0in;text-align:left;"><span style="color:#000000;">titlebar</span><span style="color:#000000;">=yes | no |1 | 0</span></p> </td> <td> <p style="margin-left:0in;text-align:left;"><span style="color:#000000;">是否显示标题栏。黙认是</span><span style="color:#000000;">yes</span></p> </td> </tr> <tr> <td> <p style="margin-left:0in;text-align:left;"><span style="color:#000000;">fullscreen</span><span style="color:#000000;">=yes | no |1 | 0</span></p> </td> <td> <p style="margin-left:0in;text-align:left;"><span style="color:#000000;">是否使用全屏模式显示浏览器。黙认是</span><span style="color:#000000;">no。处于全屏模式的窗口必须同时处于剧院模式</span></p> </td> </tr> </tbody> </table> #### 5、setTimeout()定时器 #### 语法: window.setTimeout(调用函数,[延迟的毫秒数]); setTimeout()方法用于设置一个定时器,该定时器在定时器到期后执行调用函数。注意︰ 1. window可以省略。 ⒉.这个调用函数可以直接写函数,或者写函数名或者采取字符串‘函数名)'三种形式。第三种不推荐3.延迟的毫秒数省略默认是0,如果写,必须是毫秒。 4.因为定时器可能有很多,所以我们经常给定时器赋值一个标识符。 示例: 写法1、 setTimeout(function() { console.log( '时间到了'); },2000); 写法2、 function callback() { console.log(·爆炸了'); } setTimeout(callback,3000); 写法3、 setTimeout( ' callback()', 3000);//不提倡这个写法 setTimeout()这个调用函数我们也称为回调函数callback 普通函数是按照代码顺序直接调用。 而这个函数,需要等待时间,时间到了才去调用这个函数,因此称为回调函数。 简单理解︰回调,就是回头调用的意思。上一件事干完,再回头再调用这个函数。 以前我们讲的element.onclick =function()\{\}或者element.addEventListener("click",fn);里面的函数也 是回调函数。 示例: <body> <img src="images/ ad.jpg" alt="" class="ad"> <script> var ad = document.queryselector('.ad '); setTimeout(function() { ad.style.display = 'none'; }, 5000); </script> </ body> **停止定时器:setTimeout()** window.clearTimeout (timeoutID) clearTimeout()方法取消了先前通过调用setTimeout()建立的定时器。 注意∶ 1. window可以省略。 2.里面的参数就是定时器的标识符。 示例: <body> <button>点击停止定时器</button> <script> var btn = document.querySelector('button'); var timer = setTimeout(function(){ console.log('爆炸了'); },5000); btn.addEventListener('click', function() { clearTimeout(timer); }) </script> </body> **setlnterval()定时器** 语法: window .setInterval(回调函数,[间隔的毫秒数]); setInterval(方法重复调用一个函数,每隔这个时间,就去调用一次回调函数。 注意︰ 1.window可以省略。 ⒉这个调用函数可以直接写函数,或者写函数名或者采取字符串'函数名(’三种形式。 3.间隔的毫秒数省略默认是0,如果写,必须是毫秒,表示每隔多少毫秒就自动调用这个函数。 4.因为定时器可能有很多,所以我们经常给定时器赋值一个标识符。 示例: <body> <script> // 1. setInterval //语法规范: window.setInterval(调用函数,延时时间); setInterval(function() { console.log('继续输出'); },1000); // 2. setTimeout延时时间到了,就去调用这个回调函数,只调用一次就结束了这个定时器 // 3. setInterval每隔这个延时时间,就去调用这个回调函数,会调用很多次,重复调用这个函数 </script> < / body> **停止setlnterval()定时器** 语法: window.clearInterval (intervalID); clearInterval()方法取消了先前通过调用setInterval()建立的定时器。 注意∶ 1.window可以省略。 2.里面的参数就是定时器的标识符。 示例: <body> <button class="begin">开启定时器</button> <button class="stop">停止定时器</button> <script> var begin = document.querySelector( '.begin' ); var stop = document.querySelector( '.stop '); vartimer= null;//全局变量null是一个空对象 begin.addEventListener('click' , function() { setInterval(function() { console.log( '你好 ' ); },1000); }) stop.addEventListener( 'click' , function() { clearInterval(timer); }) </script> </body> 获取验证码计时器: <body> 手机号码:<input type="number"> <button>发送</button> <script> //按钮点击之后,会禁用disabled 为true //同时按钮里面的内容会变化,注意button里面的内容通过 innerHTML修改 //里面秒数是有变化的,因此需要用到定时器 //定义一个变量,在定时器里面,不断递减 //如果变量为0 说明到了时间,我们需要停止定时器,并且复原按钮初始状态 var btn = document.queryselector('button'); var time = 3;//定义剩下的秒数 btn.addEventListener( 'click' , functioh() { btn.disabled = true; var timer = setInterval(function() { if (time == 0){ //清除定时器和复原按钮 clearInterval(timer); btn.disabled = false; btn.innerHTML ='发送'; time = 3;//这个3需要从新开始 }else { btn.innerHTML ='还剩下'+ time + '秒'; time--; } },1000); }) <script> </body> #### 6、this的使用 #### this的指向在函数定义的时候是确定不了的,只有函数执行的时候才能确定this到底指向谁,一般情况下this的最终指向的是那个调用它的对象 1、如果单独使用,this 表示全局对象。 2、在方法中,this 表示该方法所属的对象。 3、在函数中,this 表示全局对象。 4、在函数中,在严格模式下,this 是未定义的(undefined)。 5、在事件中,this 表示接收事件的元素 #### 7、JS是单线程 #### JavaScript语言的一大特点就是单线程,也就是说,同一个时间只能做一件事。这是因为 Javascript这门脚本语言诞生的使命所致——JavaScript 是为处理页面中用户的交互,以及操作 DOM而诞生的。比如我们对某个DOM元素进行添加和删除操作,不能同时进行。应该先进行添 加,之后再删除。 单线程就意味着,所有任务需要排队,前一个任务结束,才会执行后一个任务。这样所导致的问题 是∶如果JS执行的时间过长,这样就会造成页面的渲染不连贯,导致页面渲染加载阻塞的感觉。 **同步和异步** 为了解决这个问题,利用多核CPU的计算能力,HTML5提出Web Worker标准,允许JavaScript脚 本创建多个线程。于是,JS中出现了同步和异步。 **同步:** 前一个任务结束后再执行后一个任务,程序的执行顺序与任务的排列顺序是一致的、同步的。比如 做饭的同步做法:我们要烧水煮饭,等水开了( 10分钟之后),再去切菜,炒菜。 **异步:** 你在做一件事情时,因为这件事情会花费很长时间,在做这件事的同时,你还可以去处理其他事 情。比如做饭的异步做法,我们在烧水的同时,利用这10分钟,去切菜,炒菜。 **同步任务:**同步任务都在主线程上执行,形成一个执行栈。 **异步任务:**JS的异步是通过回调函数实现的。一般而言,异步任务有以下三种类型: 1、普通事件,如click、resize等 2、资源加载,如load、error等 3、定时器,包括setIlnterval、setTimeout等 异步任务相关回调函数添加到任务队列中(任务队列也称为消息队列)。 #### **8、JS执行机制** #### 1.先执行执行栈中的同步任务 ⒉异步任务(回调函数)放入任务队列中。 3.一旦执行栈中的所有同步任务执行完毕,系统就会按次序读取任务队列中的异步任务,于是被读 取的异步任务结束等待状态,进入执行栈,开始执行。 js执行机制 ![5c1714ffe44c4540bc0c2d8f301af112.png][] 由于主线程不断的重复获得任务、执行任务、再获取任务、再执行,所以这种机制被称为事件循环 event loop ) . location 对象 window对象给我们提供了一个location属性用于获取或设置窗体的URL,并且可以用于解析URL。因为这个属性返回的是一个对象,所以我们将这个属性也称为location对象。 #### 9、URL #### 统一资源定位符(Uniform Resource Locator, URL)是互联网上标准资源的地址。互联网上的每个文件都有一个唯一的URL,它包含的信息指出文件的位置以及浏览器应该怎么处理它。 URL的一般语法格式为: protocol ://host [ :port]/path/ [ ?query]#fragment http: / / www.itcast.cn/index.html ?name=andy&age=18#link <table style="width:500px;"> <tbody> <tr> <td>组成</td> <td>说明</td> </tr> <tr> <td>protocol</td> <td>通信协议常用的http,ftp,maito等</td> </tr> <tr> <td>host</td> <td>主机(域名)www.itheima.com</td> </tr> <tr> <td>port</td> <td>端口号可选,省略时使用方案的默认端口如http的默认端口为80</td> </tr> <tr> <td>path</td> <td>路径由零或多个/符号隔开的字符串,一般用来表示主机上的一个目录或文件地址</td> </tr> <tr> <td>query</td> <td>路径由零或多个/符号隔开的字符串,一般用来表示主机上的一个目录或文件地址</td> </tr> <tr> <td>fragment</td> <td>片段#后面内容常见于链接锚点</td> </tr> </tbody> </table> #### 10、location对象的属性 #### <table style="width:500px;"> <tbody> <tr> <td>location对象属性</td> <td>返回值</td> </tr> <tr> <td>location.href</td> <td>获取或者设置整个URL</td> </tr> <tr> <td>location.host</td> <td>返回主机(域名)www.itheima.com</td> </tr> <tr> <td>location.port</td> <td>返回端口号,如果未写返回空字符串</td> </tr> <tr> <td>location.pathname</td> <td>返回路径</td> </tr> <tr> <td>location.search</td> <td>返回参数</td> </tr> <tr> <td>location.hash</td> <td>返回片段#后面内容常见于链接锚点</td> </tr> </tbody> </table> location对象的方法 <table style="width:500px;"> <tbody> <tr> <td>location对象方法</td> <td>返回值</td> </tr> <tr> <td>location.assign()</td> <td>跟href一样,可以跳转页面(也称为重定向页面)</td> </tr> <tr> <td>location.replace()</td> <td>替换当前页面,因为不记录历史,所以不能后退页面</td> </tr> <tr> <td>location.reload()</td> <td>重新加载页面,相当于刷新按钮或者f5如果参数为true强制刷新ctrl+f5</td> </tr> </tbody> </table> #### 11、document对象 #### <table style="width:500px;"> <tbody> <tr> <td>属性</td> <td>说明</td> </tr> <tr> <td> <p style="margin-left:0in;text-align:left;"><span style="color:#000000;">referrer</span></p> </td> <td> <p style="margin-left:0in;text-align:left;"><span style="color:#000000;">返回载入当前文档的</span><span style="color:#000000;">URL</span></p> </td> </tr> <tr> <td> <p style="margin-left:0in;text-align:left;"><span style="color:#000000;">URL</span></p> </td> <td> <p style="margin-left:0in;text-align:left;"><span style="color:#000000;">返回当前文档的</span><span style="color:#000000;">URL</span></p> </td> </tr> </tbody> </table> 语法: document.referrer document.URL document对象的常用方法: <table style="width:500px;"> <tbody> <tr> <td>名称</td> <td>说明</td> </tr> <tr> <td> <p style="margin-left:0in;text-align:justify;"><span style="color:#000000;">getElementById</span><span style="color:#000000;">()</span></p> </td> <td> <p style="margin-left:0in;text-align:left;"><span style="color:#000000;">返回对拥有指定</span><span style="color:#000000;">id</span><span style="color:#000000;">的第一个对象的引用</span></p> </td> </tr> <tr> <td> <p style="margin-left:0in;text-align:left;"><span style="color:#000000;">getElementsByName</span><span style="color:#000000;">()</span></p> </td> <td> <p style="margin-left:0in;text-align:left;"><span style="color:#000000;">返回带有指定名称的对象的集合</span></p> </td> </tr> <tr> <td> <p style="margin-left:0in;text-align:left;"><span style="color:#000000;">getElementsByTagName</span><span style="color:#000000;">()</span></p> </td> <td> <p style="margin-left:0in;text-align:left;"><span style="color:#000000;">返回带有指定标签名的对象的集合</span></p> </td> </tr> <tr> <td> <p style="margin-left:0in;text-align:left;"><span style="color:#000000;">write()</span></p> <p style="margin-left:0in;text-align:left;"><span style="color:#000000;">Innerhtml</span></p> <p style="margin-left:0in;text-align:left;"><span style="color:#000000;">textContent</span></p> </td> <td> <p style="margin-left:0in;text-align:left;"><span style="color:#000000;">向文档写文本、</span><span style="color:#000000;">HTML</span><span style="color:#000000;">表达式或</span><span style="color:#000000;">JavaScript</span><span style="color:#000000;">代码</span></p> </td> </tr> </tbody> </table> JavaScript内置对象 <table style="width:500px;"> <tbody> <tr> <td>名称</td> <td>说明</td> </tr> <tr> <td><span style="color:#000000;">Array</span></td> <td> <div style="margin-left:.38in;text-align:left;"> <span style="color:#000000;">用于在单独的变量名中存储一系列的值</span> </div> </td> </tr> <tr> <td><span style="color:#000000;">String</span></td> <td> <div style="margin-left:.38in;text-align:left;"> <span style="color:#000000;">用于支持对字符串的处理</span> </div> </td> </tr> <tr> <td><span style="color:#000000;">Math</span></td> <td><span style="color:#000000;">用于执行常用的数学任务,它包含了若干个数字常量和函数</span></td> </tr> <tr> <td><span style="color:#000000;">Date</span></td> <td><span style="color:#000000;">用于操作日期和时间</span></td> </tr> </tbody> </table> #### 12、Date对象 #### 语法: var 日期对象=new Date(参数) 参数格式:MM DD,YYYY,hh:mm:ss 示例: var today=new Date(); //返回当前日期和时间 var tdate=new Date("september 1,2013,14:58:12"); <table style="width:500px;"> <tbody> <tr> <td>方法</td> <td>说明</td> </tr> <tr> <td> <p style="margin-left:0in;text-align:justify;"><span style="color:#000000;">getDate</span><span style="color:#000000;">()</span></p> </td> <td> <p style="margin-left:0in;text-align:justify;"><span style="color:#000000;">返回</span><span style="color:#000000;"> Date </span><span style="color:#000000;">对象的一个月中的每一天,其值介于</span><span style="color:#000000;">1</span><span style="color:#000000;">~</span><span style="color:#000000;">31</span><span style="color:#000000;">之间</span></p> </td> </tr> <tr> <td> <p style="margin-left:0in;text-align:justify;"><span style="color:#000000;">getDay</span><span style="color:#000000;">()</span></p> </td> <td> <p style="margin-left:0in;text-align:justify;"><span style="color:#000000;">返回</span><span style="color:#000000;"> Date </span><span style="color:#000000;">对象的星期中的每一天,其值介于</span><span style="color:#FF0000;">0</span><span style="color:#FF0000;">~</span><span style="color:#FF0000;">6</span><span style="color:#000000;">之间</span></p> </td> </tr> <tr> <td> <p style="margin-left:0in;text-align:justify;"><span style="color:#000000;">getHours</span><span style="color:#000000;">()</span></p> </td> <td> <p style="margin-left:0in;text-align:justify;"><span style="color:#000000;">返回</span><span style="color:#000000;"> Date </span><span style="color:#000000;">对象的小时数,其值介于</span><span style="color:#FF0000;">0</span><span style="color:#FF0000;">~</span><span style="color:#FF0000;">23</span><span style="color:#000000;">之间</span></p> </td> </tr> <tr> <td> <p style="margin-left:0in;text-align:justify;"><span style="color:#000000;">getMinutes</span><span style="color:#000000;">()</span></p> </td> <td> <p style="margin-left:0in;text-align:justify;"><span style="color:#000000;">返回</span><span style="color:#000000;"> Date </span><span style="color:#000000;">对象的分钟数,其值介于</span><span style="color:#FF0000;">0</span><span style="color:#FF0000;">~</span><span style="color:#FF0000;">59</span><span style="color:#000000;">之间</span></p> </td> </tr> <tr> <td> <p style="margin-left:0in;text-align:justify;"><span style="color:#000000;">getSeconds</span><span style="color:#000000;">()</span></p> </td> <td> <p style="margin-left:0in;text-align:justify;"><span style="color:#000000;">返回</span><span style="color:#000000;"> Date </span><span style="color:#000000;">对象的秒数,其值介于</span><span style="color:#FF0000;">0</span><span style="color:#FF0000;">~</span><span style="color:#FF0000;">59</span><span style="color:#000000;">之间</span></p> </td> </tr> <tr> <td> <p style="margin-left:0in;text-align:justify;"><span style="color:#000000;">getMonth()</span></p> </td> <td> <p style="margin-left:0in;text-align:justify;"><span style="color:#000000;">返回</span><span style="color:#000000;"> Date </span><span style="color:#000000;">对象的月份,其值介于</span><span style="color:#FF0000;">0</span><span style="color:#FF0000;">~</span><span style="color:#FF0000;">11</span><span style="color:#000000;">之间</span></p> </td> </tr> <tr> <td> <p style="margin-left:0in;text-align:justify;"><span style="color:#000000;">getFullYear()</span></p> </td> <td> <p style="margin-left:0in;text-align:justify;"><span style="color:#000000;">返回</span><span style="color:#000000;"> Date </span><span style="color:#000000;">对象的年份,其值为</span><span style="color:#000000;">4</span><span style="color:#000000;">位数</span></p> </td> </tr> <tr> <td> <p style="margin-left:0in;text-align:justify;"><span style="color:#000000;">getTime()</span></p> </td> <td> <p style="margin-left:0in;text-align:justify;"><span style="color:#000000;">返回自某一时刻(</span><span style="color:#000000;">1970</span><span style="color:#000000;">年</span><span style="color:#000000;">1</span><span style="color:#000000;">月</span><span style="color:#000000;">1</span><span style="color:#000000;">日)以来的毫秒数</span></p> </td> </tr> </tbody> </table> #### 13、navigator 对象 #### navigator对象包含有关浏览器的信息,它有很多属性,我们最常用的是userAgent,该属性可以返回由客户机发送服务器的user-agent头部的值。 下面前端代码可以判断用户那个终端打开页面,实现跳转 if((navigator.userAgent.match( /(phone|pad|pod|iPhone|iPod|ios|iPad|Android | Mobile|BlackBerry|IEMobile|MQQBrowser|JUC|fennec|wOSBrowser|BrowserNG| webos|symbian |windows Phone)/i))) { window .location.href = ""; //手机 }else { window . location.href = "" ; //电脑 } #### 14、history对象 #### window对象给我们提供了一个history对象,与浏览器历史记录进行交互。该对象包含用户(在浏览器窗口中)访问过的URL。 <table style="width:500px;"> <tbody> <tr> <td>history对象方法</td> <td>作用</td> </tr> <tr> <td>back()</td> <td>可以后退功能</td> </tr> <tr> <td>forward()</td> <td>前进功能</td> </tr> <tr> <td>go(参数)</td> <td>前进后退功能参数如果是1前进1个页面如果是-1后退1个页面</td> </tr> </tbody> </table> [5c1714ffe44c4540bc0c2d8f301af112.png]: https://image.dandelioncloud.cn/pgy_files/images/2024/04/02/b1abd5671e2d4c6b8be4b3cfd80cc160.png
还没有评论,来说两句吧...