zoukankan      html  css  js  c++  java
  • 第一章 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章,书上的所有例子都手敲一遍,每个例子深入思考,理解为止,学习方式是先看书(纸质书),然后用印象笔记软件做笔记,主要就是复制自认为重点的语句,然后放到博客上,方面以后查阅。

  • 相关阅读:
    友盟上报 IOS
    UTF8编码
    Hill加密算法
    Base64编码
    Logistic Regression 算法向量化实现及心得
    152. Maximum Product Subarray(中等, 神奇的 swap)
    216. Combination Sum III(medium, backtrack, 本类问题做的最快的一次)
    77. Combinations(medium, backtrack, 重要, 弄了1小时)
    47. Permutations II(medium, backtrack, 重要, 条件较难思考)
    3.5 find() 判断是否存在某元素
  • 原文地址:https://www.cnblogs.com/sauronblog/p/11865223.html
Copyright © 2011-2022 走看看