前言:

  作为一个即将毕业、正在实习的大学生,我也默默的进入了开发者的行列。从一开始的c#编码狗到java程序员再到现在的JS开发者,我一直

希望自己可以在这个'万恶'的互联网时代走的更远。但是我还是一个毛头小子,既没有技术也没有理论知识,就像其他程序猿一样,内心充满了恐慌

和不安。我内心充分的认识到要解决这个服罪的心理只有两种办法:

  一、彻底抛弃这一行从新开始(当然这是不可能的因为我们都有点不甘心)

  二、就是增强自己的内功功力(于是我开始了新的学习方式:读书)

正文:

  javascript 高级程序设计是堪比'犀牛书'的一部经典之作,当然正是因为他的经典所以这本书不适合刚刚开始网页编程的学徒使用,而且再看这本书

之前最好对HTML、CSS和后台开发语言(如Java,ASP.NET,C++等)有一定的了解和运用基础。

  今天这个随笔就是总结我自己再读《javascript 高级程序设计》的第一章的一个小小的总结。

  javascript起源:是因为当时虽然有一部分人拥有个人计算机,但是当时上网的方式还是电话拨号上网而且都使用速度仅为28.8k bit/s的速度来加载

网页,于是人们开始了对浏览器进行复杂的设计例如:填写表单来验证信息来得到'上网的权力',而不用再使用电话报号的上网,从这JS就诞生了,他是由

Netscape Navigator公司的布兰登 艾奇(Brendan Eich)主持开发的一种用来验证输入信息的语言,目的是摆脱与服务器交换数据的一次次操作。

  后来随着JS变得越来越强大,并且各个大的浏览器厂商(当时就是微软和Netscape)都有自己的一套类似JS的脚本语言,人们开始意识到需要一套标准的

JS来限制这些'不良'厂商,于是ECMA(欧州计算机制造协会)组织了当时39家关注脚本语言开发的公司(俗称TC39)来标准化的一种通用、跨平台、供应商中立

的脚本语言的语法和语义。于是ECMAScript就诞生了。

  我们现在使用的JavaScript其实是三种技术的结合体:ECMAScript 和 DOM(文档对象模型) 和 BOM(浏览器对象模型)的组合体,

  其中ECMAScript与浏览器并没有依赖关系,他只是定义了一门语言的语法、类型、语句、关键字、保留字、操作符和对象。

  DOM:是针对XML但经过扩展用于HTML的应用程序编程接口,DOM就是把整个页面映射成一个多层节点结构,从而使开发者可以获得页面内容和结构

的主动权,可以自由的增删改查任何节点。DOM主要是由DOM核心(如何映射基于XML的文档模型)和DHTML(DOM核心的基础上加以扩展,添加了针对HTML

的对象和方法)来组成,

  BOM:开发人员可以依靠BOM控制浏览器显示页面以外的部分,但是BOM也是因为这个功能而经常会导致问题,并且BOM没有一个完整的标准,

各个浏览器都有实现了自己的BOM对象。但是这些问题在HTML5中得到了解决。

以上只是我个人的观点,有什么不妥当的请大家指出来,给予我一些帮助,提升自己。

javascript 高级程序设计 一的更多相关文章

  1. 《JavaScript高级程序设计(第3版)》笔记-序

    很少看书,不喜欢看书,主要是上学时总坐不住,没有多大定性,一本书可以两天看完,随便翻翻,也可以丢在角落里几个月不去动一下. 上次碰到了<JavaScript高级程序设计(第3版)>感觉真的 ...

  2. 《JavaScript高级程序设计(第3版)》阅读总结记录第一章之JavaScript简介

    前言: 为什么会想到把<JavaScript 高级程序设计(第 3 版)>总结记录呢,之前写过一篇博客,研究的轮播效果,后来又去看了<JavaScript 高级程序设计(第3版)&g ...

  3. 【javascript学习——《javascript高级程序设计》笔记】DOM操作

    DOM(文档对象模型)是针对HTML和XML文档的一个API(应用程序编程接口).DOM描绘了一个层次节点树,允许开发人员添加.移除和修改. 1.节点层次 <html> <head& ...

  4. 读javascript高级程序设计00-目录

    javascript高级编程读书笔记系列,也是本砖头书.感觉js是一种很好上手的语言,不过本书细细读来发现了很多之前不了解的细节,受益良多.<br/>本笔记是为了方便日后查阅,仅作学习交流 ...

  5. 《JavaScript高级程序设计》读书笔记--前言

    起因 web编程过程使用javascript时感觉很吃力,效率很低.根本原因在于对javascript整个知识体系不熟,看来需要找些书脑补一下,同时欢迎众网友监督. 大神推荐书籍 看了博客大神们推荐的 ...

  6. 阅读摘录《javascript 高级程序设计》01

    前言: 因为工作需要,所以开始主攻前台JS方面的技术.在以前的工作中,使用过这门脚本语言.但是都是比较凌乱的,用到什么学什么,只是为了实现业务,而去使用. 不会考虑到代码优化,封装对象等.今次特意借了 ...

  7. 《JavaScript高级程序设计》学习笔记(5)——面向对象编程

    欢迎关注本人的微信公众号"前端小填填",专注前端技术的基础和项目开发的学习. 本节内容对应<JavaScript高级程序设计>的第六章内容. 1.面向对象(Object ...

  8. 《JavaScript高级程序设计》学习笔记(4)——引用类型

    欢迎关注本人的微信公众号"前端小填填",专注前端技术的基础和项目开发的学习. 本节内容对应<JavaScript高级程序设计>的第五章内容. 在ECMAScript中, ...

  9. 《JavaScript高级程序设计》学习笔记(3)——变量、作用域和内存问题

    欢迎关注本人的微信公众号"前端小填填",专注前端技术的基础和项目开发的学习. 本节内容对应<JavaScript高级程序设计>的第四章内容. 1.函数:通过函数可以封装 ...

  10. 1 《JavaScript高级程序设计》学习笔记(1)

    欢迎关注本人的微信公众号"前端小填填",专注前端技术的基础和项目开发的学习. 首先,我将从<JavaScript高级程序设计>这本JavaScript学习者必看的经典教 ...

随机推荐

  1. 吴裕雄 18-MySQL GROUP BY 语句

    GROUP BY 语句根据一个或多个列对结果集进行分组.在分组的列上我们可以使用 COUNT, SUM, AVG,等函数.GROUP BY 语法SELECT column_name, function ...

  2. 只需两步获取任何微信小程序源码

    http://baijiahao.baidu.com/s?id=1601969343738344659&wfr=spider&for=pc

  3. springboot 线程池

    我们常用ThreadPoolExecutor提供的线程池服务,springboot框架提供了@Async注解,帮助我们更方便的将业务逻辑提交到线程池中异步执行,今天我们就来实战体验这个线程池服务: 本 ...

  4. JVM—JVM内存模型

    我们知道,计算机CPU和内存的交互是最频繁的,内存是我们的高速缓存区,用户磁盘和CPU的交互,而CPU运转速度越来越快,磁盘远远跟不上CPU的读写速度,才设计了内存,用户缓冲用户IO等待导致CPU的等 ...

  5. 1.3.1、CDH 搭建Hadoop在安装之前(端口---Cloudera Manager和Cloudera Navigator使用的端口)

    下图概述了Cloudera Manager,Cloudera Navigator和Cloudera Management Service角色使用的一些端口: Cloudera Manager和Clou ...

  6. Binary Logging Formats

    [Binary Logging Formats] The server uses several logging formats to record information in the binary ...

  7. Bootstrap 代码

    [Bootstrap 代码] Bootstrap 允许您以两种方式显示代码: 第一种是 <code> 标签.如果您想要内联显示代码,那么您应该使用 <code> 标签. 第二种 ...

  8. 创建java项目思路

    一.搭建 1.创建搭建项目 2.创建分层 二.理解项目(理清总体思路) 1.是否有共同部分(过滤或者拦截) 常用量 (static) 2.搭建单表基本增(是否需要返回值)   删(条件)    查(条 ...

  9. Cacti ERROR: opening '*.rrd': No such file or directory 解决方法

    error: opening /home/cacti/rra/url-2 no such file or directory 在看Cacti Graph Debug Mode发现如下报错 RRDToo ...

  10. sed常见用法总结

    编辑文本 sed -i '1i xyz' test.txt 在第一行之前 sed -i '1a xyz' test.txt 在第一行之后插入 sed -i '1c xyz' test.txt 把第一行 ...