JavaScript的实现:
一个完整的JavaScript实现萤爱有下列三个不同的部分组成:

核心(ECMAScript)

文档对象模型(DOM)

浏览器对象模型(BOM)。

虽然JavaScript和ECMAScript通常都被人们用来表达相同的含义,但JavaScript的含义比ECMAScript中规定的要多的多。简单的可以理解成JavaScript是ECMAScript的一种实现方式。

文档对象模型(DOM)

DOM把整个页面映射为一个多层节点结构。通过DOM创建的树形图,开发人员获得了控制页面内容和结构的主动权。借助DOM提供的API,开发人员可以轻松自如的删除、添加、替换或修改任何节点。

<html>
<head>
<title>sample page</title>
</head>
<body>
<p>hello world</p>
</body>
</html>

DOM图

浏览器对象模型(BOM)

从根本上讲,BOM只处理浏览器窗口和框架,但人们习惯上也把所有针对浏览器的JavaScript扩展也算作BOM的一部分,下面就是一些这样的扩展:

·弹出新浏览器窗口的功能

·移动、缩放和关闭浏览器窗口的功能

·提供浏览器详细信息的navigator对象

·提供浏览器锁加载页面详细信息的location对象

·提供用户显示器分辨率详细信息的screen对象

·对cookies的支持

JavaScript高级程序设计(1)相关推荐

  1. 《JavaScript高级程序设计(第3版)》教程大纲

    词条 <JavaScript高级程序设计>是2006年人民邮电出版社出版的图书,作者是(美)(Nicholas C.Zakas)扎卡斯.本书适合有一定编程经验的开发人员阅读,也可作为高校相 ...

  2. 前端红宝书《JavaScript高级程序设计》核心知识总结

    此文是对<JavaScript 高级程序设计>一书难点的总结,也是笔者在看了 3 遍之后的一些梳理和感想,希望能借此巩固js的基础和对一些核心概念有更深入的了解. 摘要 JS基本的数据类型 ...

  3. 《JavaScript高级程序设计》(第2版)上市

      本书是技术畅销书<JavaScript高级程序设计> 的第2版,几乎全部更新.重写 了上一版的内容,融入了作者近几年来奋战在前端开发一线的宝贵经验 , 是学习和提高JavaScript ...

  4. 攻下《JavaScript高级程序设计》——第二章 在HTML中使用JavaScript

    从上一章我们知道了,JavaScript是一种专门为网页交互而设计的脚本语言,那么,它就免不了和HTML打交道,所以在设计JavaScript的时候,Netscape首要面临的就是,怎么让HTML和J ...

  5. 《javascript高级程序设计》笔记:内存与执行环境

    上一篇:<javascript高级程序设计>笔记:继承 近几篇博客都会围绕着图中的知识点展开 由于javascript是一门具有自动垃圾收集机制的编程语言,开发者不必担心内存的分配和回收的 ...

  6. 《javascript高级程序设计》笔记:变量对象与预解析

    上一篇:<javascript高级程序设计>笔记:内存与执行环境 上篇文章中说到: (1)当执行流进入函数时,对应的执行环境就会生成 (2)执行环境创建时会生成变量对象,确定作用域链,确定 ...

  7. javascript 高级程序设计_JavaScript 经典「红宝书」,几代前端人的入门选择

    人的一生中总要读几本经典书,在这个"经典"泛滥的年代,什么才是权威的代表,我想大概是一本的书的口碑,能积累下上佳口碑的书,往往也是能经得住时间推敲的.比如这本: 相信许多前端开发者 ...

  8. 《Javascript高级程序设计》读书笔记之对象创建

    <javascript高级程序设计>读过有两遍了,有些重要内容总是会忘记,写一下读书笔记备忘 创建对象 工厂模式 工厂模式优点:有了封装的概念,解决了创建多个相似对象的问题 缺点:没有解决 ...

  9. JavaScript高级程序设计(第3版)非扫描版

    前端学习js的红皮书 文档:JavaScript高级程序设计(第3版)非扫?.. 文档:JavaScript高级程序设计(第3版)非扫?.. 链接:http://note.youdao.com/not ...

  10. 《javascript高级程序设计》笔记:原型图解

    文章直接从原型图解开始的,如果对一些概念不太清除,可以结合后面几节查看 1. 图解原型链 1.1 "铁三角关系"(重点) function Person() {}; var p = ...

最新文章

  1. COCO新记录:60.6AP!微软提出采用注意力机制进行检测头统一的Dynamic Head
  2. c语言蜂鸣警报加循环,如何在此单片机程序基础上加入蜂鸣器报警啊
  3. Windows XP \Windows 2003启动过程的学习及故障分析处理(四)
  4. 转:SharePoint站点中用户信息与AD用户信息的“不一致”问题
  5. python动态规划图解_动态规划案例之python实现(一)
  6. leetcode 740. 删除并获得点数(dp)
  7. SEOer必须注意的10种错误SEO做法
  8. Gartner磁盘阵列魔力象限:华为、昆腾、Infinidat势头迅猛
  9. c++primer 第2章 书上例子 资料截图等
  10. 《遥感原理与应用》孙家抦版知识点总结(含简答题)——第二章
  11. 新浪微博广告投放展现形式、展现位置!微博推广广告有效果吗?
  12. PySide2嵌入外部程序
  13. android qq毛玻璃,如何快速做出毛玻璃背景?有了这个网格渐变神器,1分钟搞定...
  14. CentOS7--安装谷歌浏览器--详细步骤
  15. am大学计算机科学,美国大学本科计算机科学专业排名一览
  16. 使用python快速插入一百万数据
  17. 计算机科学 在职双证,计算机专业在职研究生有双证的吗?
  18. cmd结束指定端口号的进程
  19. 新闻发布系统——主页面分页
  20. 图文:Linux-DNS主备服务器搭建(高可用)

热门文章

  1. python组合数等于一个值_Python如何实现随机组合结果元组重复数量不能超过某个值?...
  2. jenkins不能启用端口_基于K8s的Jenkins持续集成实战(上)
  3. java poi 读取xlsx文件_使用POI读取xlsx文件(SXSSFWorkbook)
  4. c语言结构体如何定义字母,c语言中定义结构体如何定义?
  5. kicad绿油开窗_GitHub - OS-Q/S05: KiCad EDA
  6. RabbitMQ (五)实现类似Dubbo的RPC调用
  7. 2.2基本算法之递归和自调用函数_你为什么学不会递归?读完这篇文章轻松理解递归算法...
  8. apache禁止访问html,apache 限制目录访问
  9. MindMotion MM32 单片机上的MicroPython移植-PWM
  10. BT33F双基二极管