BOM的核心对象是window,它表示浏览器的一个实例。它即是通过javascript访问浏览器窗口的一个接口,也是ECMAScript规定的Global对象。

全局作用域

由于window对象同时是Global对象,因此所有在全局作用域中声明的变量、函数会变成window对象的属性和方法。如:

var age = 29;
function test() {console.log(this.age);
}
console.log(window.age) // 29
test() // 29
window.test() // 29
复制代码

定义全局变量与window对象上直接定义属性的区别:全局变量不能通过delete操作符删除,而直接在window对象上的定义的属性可以.如:

var age = 29;window.color = 'red';// 在ie < 9时抛出错误,在其他浏览器中返回false
delete window.age;// 在ie < 9时抛出错误,在其他浏览器中返回true
delete window.color // truewindow.age; // 29
window.color; // undefined
复制代码

尝试访问未声明的变量会抛出错误,但通过查询window对象,可以知道某个可能未声明的变量是否存在。如:

// 这里抛出错误,因为old未定义
var curr = old;// 这里不会抛出错误,因为这是一次属性查询var val = window.oldVal;
复制代码

如有侵权,请发邮箱至wk_daxiangmubu@163.com 或留言,本人会在第一时间与您联系,谢谢!!

长按二维码关注我们,了解最新前端资讯

【JS第34期】BOM-window对象相关推荐

  1. js中DOM, DOCUMENT, BOM, WINDOW 区别

    全栈工程师开发手册 (作者:栾鹏) js系列教程6-BOM操作全解 js系列教程7-DOM操作全解 js中DOM, DOCUMENT, BOM, WINDOW 区别 DOM 全称是 Document ...

  2. js bom window对象

    一.全局作用域 我们全局作用域定义了一个变量name,window对象下也能访问,证明在全局作用域下定义的变量,会自动纳入window对象. var name = "Bob";co ...

  3. BOM——window对象

    BOM 浏览器对象模型,它提供了独立于内容而与浏览器窗口进行交互的对象,其核心对象是window BOM 由一系列相关的对象构成,并且每个对象都提供了很多方法与属性 BOM 缺乏标准,JavaScri ...

  4. zone.js在bootstrap阶段对window对象里一些标准方法的注入逻辑

    zone.js bootstrap时,将自定义逻辑注入一些标准方法: 我关心的是XHR: patchXHR方法: 调用patchMethod注入open方法: 开始patch send方法: dele ...

  5. js中WINDOW对象中的location成员对象

    js中DOM, DOCUMENT, BOM, WINDOW 区别 全栈工程师开发手册 (作者:栾鹏) js系列教程6-BOM操作全解 js中WINDOW对象中的location成员对象 locatio ...

  6. js中WINDOW对象中的navigator成员对象

    js中DOM, DOCUMENT, BOM, WINDOW 区别 全栈工程师开发手册 (作者:栾鹏) js系列教程6-BOM操作全解 js中WINDOW对象中的navigator成员对象 naviga ...

  7. APIS(BOM)——Window对象、本地存储

    Window对象 BOM Window对象 定时器-延时函数 js执行机制 同步任务 异步任务 执行机制 location对象 navigator 对象 histroy 对象 本地存储 本地存储分类 ...

  8. 前端:JS/24/BOM和DOM简介,for...in循环遍历,window对象的属性和方法,延时器,定时器,screen屏幕对象,location地址栏对象,history历史记录对象

    BOM 和DOM简介 BOM ,Browser Object Model ,浏览器对象模型: BOM主要提供了访问和操作浏览器各组件的方式: 浏览器组件:window(浏览器容器), location ...

  9. day04【JS高级】BOM对象、Window对象、二种定时器、 Location对象、DOM对象、DOM获取元素、DOM操作内容、DOM操作属性、DOM操作样式、DOM操作元素(标签)、 正则表达式

    回顾 1. js基础语法运算符:算数运算符可以与字符串进行数学运算,js底层进行隐式转换比较运算符:===(恒等) 特点,比较类型+内容流程控制语句if判断条件表达式:1)布尔2)数值:非0为真3)字 ...

最新文章

  1. Maven 发布到本地仓库
  2. 光端机的分类有哪些?
  3. 用栈和递归求解迷宫问题
  4. python中的序列化与反序列化
  5. eclipse弃坑记第一篇之在idea上配置Tomcat环境并创建Javaweb项目的详细步骤原创
  6. pdfjs viewer 开发小结
  7. 独家 | Face++印奇:AI是场持久战,但第一阶段明年结束
  8. [转]MFC与Qt的内存管理
  9. 简单瀑布流-jquery实现
  10. sklearn 中GBDT的损失函数
  11. 微信小程序开发 -- 获取当前页面路径
  12. PLC -- 可编程逻辑控制器
  13. python飞机订票系统
  14. 电脑蓝牙打电话-总结(篇外、虚拟声卡选型)
  15. Brocade 光纤交换机级联配置
  16. 老罗的工匠精神是不是有唯一性
  17. LICEcap 一款小巧的GIF屏幕录制软件
  18. Python的Mann-Kendall非参数检验和计算Hurst指数
  19. EMD经验模态分解实例(转C代码)
  20. 块设备驱动、bio理解

热门文章

  1. linux进程---exec族函数(execl, execlp, execv, execvp, )解释和配合fork的使用
  2. php接口和java接口_java和php接口的区别是什么
  3. 面试官:请手写一个带取消功能的延迟函数,axios 取消功能的原理是什么
  4. NFS服务的配置过程
  5. [笔记]提升R的性能和突破内存限制的技巧
  6. 从零开始学_JavaScript_系列(21)——dojo(8)(手把手教你封装一个widget)
  7. 跟益达学Solr5之solrconfig.xml配置详解
  8. Object.observe将不加入到ES7
  9. Windows Azure 安全最佳实践 - 第 6 部分:Azure 服务如何扩展应用程序安全性
  10. express利用nodemailer发送邮件(163邮箱)