• 第一章 JavaScript简介


    学习目标

    笔记内容

    Js诞生于1995年

    Js组成:

    文档对象模型(DOM)
    文档对象模型(DOM,Document Object Model)是针对 XML 但经过扩展用于 HTML 的应用程序编
    程接口(API,Application Programming Interface)。DOM 把整个页面映射为一个多层节点结构。HTML
    或 XML 页面中的每个组成部分都是某种类型的节点,这些节点又包含着不同类型的数据。
     

    1. 为什么要使用 DOM
    基础上,开发人员首次无需重新加载网页,就可以修改其外观和内容了。
     
    2. DOM 级别
    DOM1 级由两个模块组成:DOM
    核心(DOM Core)和 DOM HTML。其中,DOM 核心规定的是如何映射基于 XML 的文档结构,以便
    简化对文档中任意部分的访问和操作。DOM HTML 模块则在 DOM 核心的基础上加以扩展,添加了针
    对 HTML 的对象和方法。
     
    注意:
    DOM 并不只是针对 JavaScript 的,很多别的语言也都实现了 DOM。
    不过,在 Web 浏览器中,基于 ECMAScript 实现的 DOM 的确已经成为 JavaScript 这
    门语言的一个重要组成部分。
     
    DOM2 级在
    原来 DOM 的基础上又扩充了(DHTML 一直都支持的)鼠标和用户界面事件、范围、遍历(迭代 DOM
    文档的方法)等细分模块,而且通过对象接口增加了对 CSS(Cascading Style Sheets,层叠样式表)的
    支持。DOM1 级中的 DOM 核心模块也经过扩展开始支持 XML 命名空间。
     
    DOM2 级引入了下列新模块,也给出了众多新类型和新接口的定义。
      DOM 视图(DOM Views):定义了跟踪不同文档(例如,应用 CSS 之前和之后的文档)视图的
    接口;
      DOM 事件(DOM Events):定义了事件和事件处理的接口;
      DOM 样式(DOM Style):定义了基于 CSS 为元素应用样式的接口;
      DOM 遍历和范围(DOM Traversal and Range):定义了遍历和操作文档树的接口。
     
    DOM3 级则进一步扩展了 DOM,引入了以统一方式加载和保存文档的方法——在 DOM 加载和保
    存(DOM Load and Save)模块中定义;新增了验证文档的方法——在 DOM 验证(DOM Validation)模块中定义。DOM3 级也对 DOM 核心进行了扩展,开始支持 XML 1.0 规范,涉及 XML Infoset、XPath和 XML Base。
     
     
    在阅读 DOM 标准的时候,读者可能会看到 DOM0 级(DOM Level 0)的字眼。
    实际上,DOM0 级标准是不存在的;所谓 DOM0 级只是 DOM 历史坐标中的一个参照
    点而已。具体说来,DOM0 级指的是 Internet Explorer 4.0 和 Netscape Navigator 4.0最
    初支持的 DHTML。
     
    浏览器对象模型(BOM)
    开发人员使用 BOM 可以控制浏览器显示的页面以外的部分。
    下面就是一些这样的扩展:
      弹出新浏览器窗口的功能;
      移动、缩放和关闭浏览器窗口的功能;
      提供浏览器详细信息的 navigator 对象;
      提供浏览器所加载页面的详细信息的 location 对象;
      提供用户显示器分辨率详细信息的 screen 对象;
      对 cookies 的支持;
      像 XMLHttpRequest 和 IE的 ActiveXObject 这样的自定义对象。
     
    小结
    JavaScript 是一种专为与网页交互而设计的脚本语言,由下列三个不同的部分组成:
      ECMAScript,由 ECMA-262 定义,提供核心语言功能;
      文档对象模型(DOM),提供访问和操作网页内容的方法和接口;
      浏览器对象模型(BOM),提供与浏览器交互的方法和接口。
    JavaScript 的这三个组成部分,在当前五个主要浏览器(IE、Firefox、Chrome、Safari 和 Opera)中
    都得到了不同程度的支持。其中,所有浏览器对 ECMAScript 第 3 版的支持大体上都还不错,而对
    ECMAScript 5 的支持程度越来越高,但对 DOM 的支持则彼此相差比较多。对已经正式纳入 HTML5 标
    准的 BOM来说,尽管各浏览器都实现了某些众所周知的共同特性,但其他特性还是会因浏览器而异。

    我目前是前端程序员,主要做小程序(微信、百度)方面的开发工作,一直没有系统得学过JS,训练过JS,看了张鑫旭大佬的博客文章里面的一句话让我印象深刻:"在我看来,你学react除了让自我感觉良好以外,没有任何作用,如果你的目标是进入非常棒的前端团队的话。因为校招,甚至社招,基础绝对是更重要的。所以,我觉得你有必要好好想一想,我的专业是什么,我的兴趣是什么,我最强的特质是什么,既然你说你react力不从心,很显然,react这种东西在当下并不适合你,如果进一步本质分析,可能这辈子都不适合你。大学数年过得很快的,要想校招时候offer拿到手软,一定要进行基础攻坚,jq,less,bootstrap要学就不要学怎么使用,而是学人家的源码,为什么这么实现,如果看不懂,搞不明白,说明你html,css,js基础还很弱,离熟练掌握还差了好几条街,需要不断积累,再不断积累,会做几个项目鸟用都没有,和你竞争的那些前端哪个大学没做过几个项目,而校招名额就那几个。等什么时候,jq,bootstrap甚至react源码都看得懂了,恭喜你,你已经到了另一个世界,眼界和认知都脱胎换骨,即使是一些你自己都没注意的谈吐表达,都会很容易感受出不俗的技术造诣在里面!" 目前的学习计划是一天看1章,书上的所有例子都手敲一遍,每个例子深入思考,理解为止,学习方式是先看书(纸质书),然后用印象笔记软件做笔记,主要就是复制自认为重点的语句,然后放到博客上,方面以后查阅。

  • 相关阅读:
    mysql添加用户
    ubantu更新源
    内存的crash记录分析
    windows下sublime2 clojure环境配置
    服务器使用recast navigation
    网络库crash以及boost asio strand dispath分析
    CentOS7 监控进程网络流量工具安装
    vs2013提高编译速度
    Centos6.5 gitlab安装使用
    linux命令行将已有项目提交到github
  • 原文地址:https://www.cnblogs.com/sauronblog/p/11865223.html
Copyright © 2020-2023  润新知