zoukankan      html  css  js  c++  java
  • Windows 对象

    了解 Window 对象

    JavaScript 中的 window 对象是一个包罗万象的对象,原因有一下三点:

    1. Web 浏览器就是将 Global 全局对象作为 window 对象的一部分加以实现。
    2. DOM 中的核心对象 document ,作为 window 对象的一个属性而存在。
    3. window 对象的属性还包括了 BOM 提供的对象:location navigator screen history 和 window。

    在 ECMAScript 规范中,JS对象可分为三类:

    • 本地对象:Object、Function、Array、String、Boolean、Number、Date、RegExp、Error、EvalError、RangeError、ReferenceError、SyntaxError、TypeError、URIError 和 开发者自定义的对象。
    • 内置对象(开发者不必明确实例化内置对象,它已被实例化了):
      • Global 对象:
        顶层函数(全局函数):decodeURI()、decodeURIComponent()、encodeURI()、encodeURIComponent()、escape()、unescape() 、eval()、getClass()、isFinite()、isNaN()、Number()、parseFloat()、parseInt()、String()
        顶层属性(全局属性):Infinity、java、NaN、Packages、undefined

      • Math 对象:valueOf()、max(x,y)、floor(x)、random()、random()、......

    • 宿主对象:所有 BOM 和 DOM 对象都是宿主对象。
      • 由 DOM 提供的类型有:Node、Document、Element、Text、Comment、CDATASection、DocumentType、DocumentFragment、Attr
      • 由 BOM 提供的对象有:location、navigator、screen、history 和 window

    而这些对象,全都可以在 window 对象中找到。console.log(window)

    为了理解 window 对象,我们必须理清楚一下四个概念:

    1. BOM:(浏览器对象模型)是为了操作浏览器而定义的一组接口。是各个浏览器厂商根据 DOM 在各自浏览器上的实现,表现为不同浏览器定义有差别,实现方式不同。
    2. DOM:(文档对象模型)是为了操作文档而定义的一组接口。是 W3C 的标准,即所有浏览器公共遵守的标准
    3. ECMAScript:JS的核心语法,提供了 JS 的语法和规范
    4. document: DOM 树中的一个重要的 node(节点),通常为子根节点。由于一个页面可能有多个 <iframe/> ,所以一个页面可以有多个document节点。document 也是 BOM 中 window 对象下的子对象。
    5. Global 全局对象

    window 的广义和狭义的理解

    1. 广义:window 作为一个对象,被 Web 浏览器定义为 全局对象使用,他包换了 本地对象、内置对象、宿主对象 的所有 类型 和 方法。作为全局对象,在调用他的类型、方法 和 属性时,可以省略 window. 这个前缀
      console.log(window.document === document) // true
    2. 狭义:从字面意思理解,window 就是窗口的意思,记录着窗口的相关信息,这些信息有 BOM 提供,详细内容请查看《BOM》
  • 相关阅读:
    软件测试重点
    微端 代码project as air 分享
    分析三层架构
    mini2440裸试验—计算器(LCD显示,触摸屏突破)
    ThreadSafeClientConnManager的20个例子
    HttpClient 网络优化
    maven仓库总结,maven私服搭建,批量mvn eclipse:eclipse
    ThreadSafeClientConnManager用来支持多线程的使用http client
    HttpClient 4.3教程(转载)
    一个简单的HTTP服务器(多线程)
  • 原文地址:https://www.cnblogs.com/MrZhujl/p/15049223.html
Copyright © 2011-2022 走看看