前言:学习JavaScript之前一直处于一种断断续续的状态,没能再一段时间连续坚持学完一遍。这也是开启本篇专栏的首要目的,系列博客将持续更新本人学习JavaScript高级程序设计这本书的一些笔记和感想。更新频率将尽力保持在每周2~3篇,欢迎大家督促更新。
一、JavaScript出现的原因?
JavaScript作为前端核心开发语言,最初是为了解决什么问题出现的呢?时间回到1995年,没错,距离现在也不过27年而言,JavaScript相对而言是一门十分年轻的语言。如今,我们在登录某个网址或者应用时,用户名称和用户密码都是必填选项,而且对于格式也存在一定要求。最初的时候,这些工作都是需要给后台服务器发送请求获取验证的,因特网最开始的时候网速比较慢,频繁的向后台服务器发送请求会进一步降低效率。JavaScript的出现的目的就是为了将数据验证放到客户端来做,以缓解服务端的压力。现在的JavaScript的功能不再仅仅局限于数据验证,可以实现复杂的计算与交互。主流的桌面浏览器、手机浏览器、和屏幕阅读器都已支持JavaScript。
二、 JavaScript的实现
虽然JavaScript和ECMAScript基本上是同义词,但JavaScript不仅局限于后者所定义的内容,其主要包括以下三大块内容。后者只是JS的一个子集。
JavaScript的发展经历了众多版本的更新迭代,其中ECMA-262第6版,我们目前一般称之为ES6,这是JS历史上更新内容最多的一次,其正式支持了类、模块、迭代器、生成器、箭头函数、期约、反射、代理和众多新增加的数据类型。
2.1 DOM 文件对象模型简介
文件对象模型就是一个应用程序接口(API),用在HTML中使用扩展的XML。DOM将整个页面抽象为一组分层的节点,HTML或XML页面中的每一个组成部分都是一种节点。
为什么需要DOM呢?最重要的一点就是DOM可以实现不刷新页面就修改页面的外观和内容,这一点对于Web技术而言是一个巨大的进步。
DOM视图:描述追踪文档不同视图的接口。
DOM事件:描述事件以及处理事件的接口。
DOM样式:描述处理元素CSS样式的接口。
DOM遍历和范围:描述遍历和操作DOM树的接口。
2.2 BOM 浏览器对象模型简介
浏览器对象模型提供了弹出新浏览器窗口的能力、移动,缩放和关闭浏览器窗口的能力、navigator对象提供了关于浏览器的详细信息、location提供浏览器加载页面的详细信息、screen对象提供了关于用户屏幕分辨率的详细信息、performance对象提供了浏览器内存占用导航行为的详细信息。
三、总结归纳
文档对象模型DOM提供了与网页内容交互的方法和接口,浏览器对象模型提供了与浏览器交互的方法和接口。不同浏览器对于DOM和BOM的支持度都不相同,在实际开发的时候往往需要做兼容性处理。
JavaScript高级程序设计读书进度 10/865