Kidney日拱一卒JavaScript系列Chapter0 Preface

Chapter 0 前言

1、JavaScript简史

1994年网景发布了Navigator浏览器,由于当时的网页缺乏交互能力,因此网景急需一种脚本语言为网页添加交互,但究竟用什么语言,一时难以定夺。然而第二年Sun发布了Java,其席卷天下的态势,促使网景做出抱大腿的决定,网景与Sun结盟之后,Sun完全介入了脚本语言开发的决策。

最终,网景决定开发一款仿照Java的简化版语言,并将任务指派给Brendan Eich,然而这家伙对Java毫无兴趣,为了应付交差,他只用了两周时间就把JavaScript设计出来了。

他的基本设计思路是:

(1)借鉴C语言的基本语法;

   (2)借鉴Java语言的数据类型和内存管理;

   (3)借鉴Scheme语言,将函数提升到"第一等公民"(first class)的地位;

(4)借鉴Self语言,使用基于原型(prototype)的继承机制。

   多方决策的综合使得JavaScript成为了一个杂交的产物。

1996年,微软终于意识到了互联网的重要价值,因而加大了对自家浏览器IE的支持,其中就包括JScript,于是一时间市场上存在两个不同的JavaScript版本。这一历史渊源预示了后来的程序员为处理兼容性问题而遭受的无尽的痛苦。

终于在1997年,欧洲计算机制造商协会(ECMA)制定了JavaScript的标准ECMA-262(又名ECMAScript),各个浏览器厂商也开始以该标准作为自家浏览器脚本的实现基础。

   ECMAScript到目前为止,共发布了6版,(2009年发布第五版,2016年发布第六版)。

参考:http://www.ruanyifeng.com/blog/2011/06/birth_of_javascript.html

2、在HTML中使用JavaScript

2.1 外部脚本

<script type ="text/javascript" src ="url"></script>

除了type和src,该标签还有其它的属性,如:

async ="async" 异步脚本。表示立即下载脚本,但不要阻塞其它操作。

defer ="defer" 延迟脚本。表示立即下载,但直到整个文档解析完毕后再执行脚本。针对外部脚本。

引号中既可以是相对路径,也可以是绝对路径。

在没有设置async或defer的情况下,浏览器按script的排列顺序进行解析。

至于<script>的位置,现代前端的做法是将其置于</body>前。

2.2 嵌入式脚本

直接在<script></script>标签中编写脚本。

3、JavaScript知识体系与本系列的目录结构

本系列是对JS两大权威书籍《JavaScript高级程序设计(第3版)》(简称《高级》)和《JavaScript权威指南(第6版)》(简称《权威》)以及其它资料的提炼、梳理和总结。

本系列会经常采用英文批注,增加表意的明确性。


JavaScript知识版图


Language


ECMAScript


Client-side


BOM


DOM


Others


Transmition


Ajax、JSON


Server-side


Node …


JavaScript纵向生态


应用层


交互逻辑


组件层


定制组件


通用组件,如Datepicker …


框架层


jQuery、Angular、React …


核心层


原生js和底层API


语言


第零章:前言


JavaScript简史、JavaScript知识体系


第一章:语法


语法简述


第二章:值与变量


六种类型的值、类型转换、变量简述


第三章:操作符与表达式


各类操作符、各类表达式


第四章:语句


条件、循环


第五章:函数


函数简析、作用域、闭包、this对象、递归等


第六章:对象


对象简述、各类JavaScript预设对象的属性及方法


第七章:面向对象编程


各类创建对象的方法、对象间的继承


客户端


第八章:BOM


各类BOM对象的属性和方法


第九章:DOM


各类DOM对象的属性和方法、事件、表单脚本等


第十章:其它客户端技术


客户端检测、安全、储存、JS执行原理等


传输


第十一章:数据传输


Ajax、Json等


服务端


第十二章:服务端脚本


Node等


其它


第十三章:正则表达式


规则、使用方法


第十四章:模块化


模块化思想及其技术演进过程


第十五章:图形


Canvas、SVG等


第十六章:ES6的新东西


新的知识点

时间: 2024-10-10 17:08:17

Kidney日拱一卒JavaScript系列Chapter0 Preface的相关文章

Kidney日拱一卒JavaScript系列Chapter9 DOM

Chapter 9 文档对象模型 1.DOM树 DOM是HTML和XML文档提供的一系列API的集合. DOM将HTML和XML文档描绘成一个由多层次节点构成的树结构,文档中所有的元素都是一个节点. 树结构的根节点(又称文档元素)有且只有一个. HTML文档的根节点始终是<html>,XML文档则可以是任何元素. 1.1 使用nodeType检测节点类型 节点(node)一共有12种类型,每种类型用一个1~12之中的数字表示. 数字 表达式 说明 1 Node.ELEMENT_NODE 元素类

Kidney日拱一卒JavaScript系列Chapter4 Statements

Chapter 4 语句 从形式上看,语句就是以分号结尾的一段代码.无论这段代码是表达式,还是别的什么东西,甚至什么都没有,只要以分号结尾,就可以看成是语句. 从功能上看,语句隐含了“使某件事发生”的意义(make something happen). 用大括号将多条语句包含起来,就形成了复合语句(语句块). JavaScript programs are nothing more than a sequence of statements to execute. 1.条件condition 1

Kidney日拱一卒JavaScript系列Chapter2 Values&amp;Variables

Chapter 2 值和变量 1.值 Values 计算机能做的唯一的事就是处理数据. 计算机所处理的一切数据,无论是数字.文字,还是图片.音频和视频,其最终在硬件中运行的形态都是bit,用数学方式表达即0和1,用物理方式表达即电流的低压和高压. 在程序语言中,数据被称为“值”.值由一系列的bit组成. 2.值的类型 Types  JavaScript一共有六种类型的值,其中有五种基本类型:number,string,boolean,null,undefined和一种复杂类型:object.  

Kidney日拱一卒JavaScript系列Chapter1 Syntax

Chapter 1 语法 1.大小写敏感 Case Sensitive 2.注释 Comments // 单行注释 /* 多行注释 */ /* * 多行注释一般这么写 */ 3.严格模式 ES5引入严格模式用于规避ES3中某些不确定行为. "use strict "; 可在脚本文件顶部或函数内部上方引入上述声明. 4.JavaScript只有三种类型的字符:标识符.值.操作符. 标识符(Identifier)就是一个名称,可能是变量名.函数名.对象名,还可能是关键字(Keywords)

Kidney日拱一卒JavaScript系列Chapter10 Other Client-side Technology

Chapter 10 其它客户端技术 1.客户端检测Client Detection 客户端检测是跨浏览器开发中用到一种处理兼容性问题的开发手段.常用的有三种方式,按照使用的优先级排列分别而是:能力检测>怪癖检测>用户代理检测. 1.1 能力检测(feature detection) 检测浏览器是否支持某项属性或方法. 基本形式: if(capability){ do something with this capability // 不能是另外一个 } 先检测最常用的,再检测特殊的.保证常用

Kidney日拱一卒JavaScript系列Chapter3 Operators&amp;Expressions

Chapter 3 操作符与表达式 1.操作符 从形式上看,操作符既可以是符号(如+,-,*等),也可能是字符(delete,instanceof等): 从结构上看,操作符可分为一元.二元和三元操作符. 使用操作符操作值,会存在各种隐式转换. 下表是所有的操作符,从上到下优先级从高到低,分割线内优先级相同. 1.1 递增与递减 前置:先计算,后取值: 后置:先取值,后计算: 1.2 位操作符 用于操作底层的内存地址. 1.3 布尔操作符 共三个,其优先级顺序是!> && > |

Windows Server 2008 网络管理资料收集 争取做“日拱一卒“

Windows Server 2008R2系统管理[刘道军主讲MCITP课程] http://edu.51cto.com/course/course_id-510.html 安装活动目录服务器 http://edu.51cto.com/lesson/id-20503.html Windows Server 2008 R2 活动目录管理演示 http://edu.51cto.com/course/course_id-1024.html WinServer 2012文件服务器案例分析[第二十五期]

别做操之过急的”无效将军”,做实实在在的”日拱一卒”

前天在网上看到一句话很不错,拿来和大家分享,同时用我的"大叔"三观来解读这句话. 这句话是:"我们不需要操之过急的"无效将军",我们需要实实在在的"日拱一卒". 这句话翻译成日常用语的话来自于一句很经典的语句:纵使一年不将军,不可一日不拱卒.此句来源于中国象棋:       将军:象棋中向对手发出可能产生"致命"的一招.这个词一般描绘象棋者比较高大上的情形.       拱卒:下过象棋的人应该知道,有种下法叫做&qu

魔盒——日拱一卒,功不唐捐把

郑昀 创建于2017/6/29 最后更新于2017/6/30 关键词:大数据,Spark,SparkSQL,HBase,HDFS,工作流,任务,Flow,Job,监控报警 提纲: 为什么要大数据协作? 什么是愿景? 我们的DataCube 工作流什么样? DataCube 是数据中心刘奎组推出的大数据协作平台.从2016年3月29日我提出数据中心的大一统平台建设目标至今,已经过去了整整一年零三个月时间.其实在很久以前,基于 Hadoop 集群的单一离线计算任务的上传和管理工作,针对 Mesos