BOM

一、Window对象

在浏览器中window对象即是全局对象,又是JavaScript访问浏览器的一个接口。

定义全局变量和定义window对象还是有差别的,全局变量不能通过delete操作符删除,而window变量可以。

        var a = "Global";
window.b = "Window"; delete a;
delete window.b; console.log(a); //'Global'
console.log(b); //'b is not defined'

用var添加的window属性其[[Configurable]]特性值被设置为false

一)窗口关系及frame

如果文档包含框架(frame 或 iframe 标签),浏览器会为 HTML 文档创建一个 window 对象,并为每个框架创建一个额外的 window 对象。

top属性:始终指向最外层,即浏览器窗口。

parent属性:该窗口的直接父亲窗口。

self属性:始终指向window自己

注意:除非最高层窗口是用window.open()打开的,否则其window对象的name属性不会包含任何值。

二)窗口位置及大小

三)导航及打开窗口

详情见window.open()  API

超时调用:在一定时间后调用代码

        setTimeout(function () {
alert("Hello,everyone!");
},10000);

注意:JavaScript是一个单线程解释器,因此一定时间内只能执行一段代码。setTimeout()第二

个参数指定过多少毫秒后把当前任务添加到任务队列中去,如果任务队列中没有任务,添加后

的任务会立即执行。setTimeout()会返回一个任务ID,可以通过该ID取消任务调用。

//设置超时调用
var timeoutId = setTimeout(function() {
alert("Hello world!");
}, 1000);
//注意:把它取消
clearTimeout(timeoutId);

间歇调用:按指定时间重复执行代码,直到间歇调用被取消或者页面被卸载。

        var count = 0;
setInterval(function () {
++count;
console.log("Time: "+count);
},3000);

调用 setInterval()方法同样也会返回一个间歇调用 ID,该 ID 可用于在将来某个时刻取消间歇
调用。要取消尚未执行的间歇调用,可以使用 clearInterval()方法并传入相应的间歇调用 ID。

四)系统对话框

二、location对象

location对象提供了与当前窗口加载的文档相关的一些信息,还提供了一些导航功能。该对象即是window对象的属性,又是document对象的属性

location属性和方法:请查看相关API

三、navigator对象

四、screen对象

JavaScript基础笔记(六)BOM的更多相关文章

  1. JavaScript基础笔记一

    一.真假判断 真的:true.非零数字.非空字符串.非空对象 假的:false.数字零.空字符串.空对象.undefined 例: if(0){ alert(1) }else{ alert(2) } ...

  2. JavaScript基础笔记二

    一.函数返回值1.什么是函数返回值    函数的执行结果2. 可以没有return // 没有return或者return后面为空则会返回undefined3.一个函数应该只返回一种类型的值 二.可变 ...

  3. JavaScript基础笔记集合(转)

    JavaScript基础笔记集合   JavaScript基础笔记集合   js简介 js是脚本语言.浏览器是逐行的读取代码,而传统编程会在执行前进行编译   js存放的位置 html脚本必须放在&l ...

  4. 回归JavaScript基础(六)

    主题:引用类型Date.RegExp的介绍. 上节主要主要介绍了Object.Array引用类型.这节将继续为大家介绍引用类型,并对书中的一些知识点进行总结与归纳,也借此巩固自己对JavaScript ...

  5. Android路径之Javascript基础-笔记

    一.Javascript概述(知道) a.一种基于对象和事件驱动的脚本语言 b.作用: 给页面添加动态效果 c.历史: 原名叫做livescript.W3c组织开发的标准叫ECMAscipt. d.特 ...

  6. JavaScript基础笔记(一)基本概念

    基本概念 一.语法 一)区分大小写 二)标识符 书写规则同Java 三)注释 略 四)严格模式 1.在整个脚本中启用严格模式:在顶部添加 "use strict" 2.指定函数在严 ...

  7. javascript基础笔记学习

    /** * Created by Administrator on 2016/12/26. */ /* var box; alert( typeof box); box是Undefined类型,值是u ...

  8. JavaScript基础学习(七)—BOM

         BOM(Browser Object Model): 浏览器对象模型.提供了独立于内容而与浏览器窗口交互的对象,BOM主要用于管理窗口和窗口之间的通讯. 一.Navigator对象      ...

  9. JavaScript基础笔记(十)表单脚本

    表单脚本 一.表单基础知识 JavaScript中表单对应的是HTMLFormElement类型,该类型继承自HTMLElement类型. 通过document.forms可以获得所有表单元素,通过数 ...

随机推荐

  1. 论文阅读笔记三十八:Deformable Convolutional Networks(ECCV2017)

    论文源址:https://arxiv.org/abs/1703.06211 开源项目:https://github.com/msracver/Deformable-ConvNets 摘要 卷积神经网络 ...

  2. Django认证系统auth认证

    使用Django认证系统auth认证 auth认证系统可以处理范围非常广泛的任务,且具有一套细致的密码和权限实现.对于需要与默认配置不同需求的项目,Django支持扩展和自定义认证;会将用户信息写入到 ...

  3. asp.net core 缓存和Session

    缓存 缓存在内存中 ASP.NET Core 使用 IMemoryCache内存中缓存是使用依赖关系注入从应用中引用的服务. 请在ConfigureServices中调用AddMemoryCache( ...

  4. Redis都有哪些数据类型

    string 这是最基本的类型了,就是普通的set和get,做简单的kv缓存 hash 这个是类似map的一种结构,这个一般就是可以将结构化的数据,比如一个对象(前提是这个对象没嵌套其他的对象)给缓存 ...

  5. 使用shell脚本定时采集日志数据到hdfs分布式文件系统

    1.首先对linux操作系统的crontab命令进行熟悉和了解: .crond是linux下用来周期性的执行某种任务或等待处理某些事件的一个守护进程,与windows下的计划任务类似,当安装完成操作系 ...

  6. 一脸懵逼学习keepalived(对Nginx进行热备)

    1:Keepalived的官方网址:http://www.keepalived.org/ 2:Keepalived:可以实现高可靠: 高可靠的概念: HA(High Available), 高可用性集 ...

  7. C#学习-构造函数

    如果没有为类显式地定义一个构造函数,则C#编译器会自动生成一个函数体为空的默认无参的实例构造函数. 构造函数主要用于创建类的实例对象. 当调用构造函数创建一个对象时,构造函数会为对象分配内存空间,并初 ...

  8. 使用 curses 函数库管理基于文本的屏幕

    curses 函数库提供了终端无关的方式来编写全屏幕的基于字符的程序.curses 还可以管理键盘,提供了一种简单易用的非阻塞字符输入模式. curses 函数库能够优化光标的移动并最小化需要对屏幕进 ...

  9. .net core支持的操作系统版本

    https://github.com/dotnet/core/blob/master/os-lifecycle-policy.md

  10. error C1128: 节数超过对象文件格式限制: 请使用 /bigobj 进行编译

    VS2015出现如上错误. 默认情况下,对象文件最多可存放 65,536 (2^16) 个可寻址的节. 这种情况不管指定哪个目标平台. /bigobj 可将该地址容量增加至 4,294,967,296 ...