单元(章) | 课题(节) | 内容 |
1.基础篇 | 1.JS介绍 | html、css --> js、hello world、js特性、js&DOM、js历史 |
2.JS调试 | alert、console、展示chrome,ff,ie 调试器界面、以Chrome为例子,详细展示、展示面板作用、查找要调试的文件、设置断点,debugger、展示4个按钮,并展示响应的堆栈变化,watch |
3.基本语法 | 标识符、变量、直接量、关键字和保留字、语句、区分大小写、注释 |
4.基本类型 | Number(Interger, Float, NaN,Infinity)、String("",’’)、Boolean(true,false)、undefined(什么情况下为undefined)、null、Object({})、原始类型和引用类型的区别、typeof |
5.运算符与表达式 | 表达式、运算符、一元操作符(++,--, +,-)、算术运算(+、-、*、/、%)、关系运算(>、<、==>=、<=、===、!==)、逻辑运算(!、&&、 ||)、位运算(&、|、^、~、<<、>>,>>>)、赋值运算(=)、条件运算(?:)、逗号运算(,)、对象运算符(new delete . [] instanceof)、运算符的优先级 |
6.语句 | 语句、条件(if,swich)、循环(for/for in/ while/ do-while) lable break continue、异常 (try catch finally)、with、label |
7.数值 | Math(abs、round、ceil、floor、max、min、random、其他)、parseInt、parseFloat、Number、NaN、toFixed |
8.字符串 | 定义、length、charAt(下标)、indexOf、lastIndexOf、search、match、replace、substring、slice、substr、split、toLowerCase、toUpperCase、连接、转字符串(+、String())、转义 |
9.对象 | 定义、创建(new、直接量)、属性、方法、constructor、toString、valueOf、hasOwnproperty |
10.数组 | 定义、创建(new、直接量)、length、indexOf、forEach、【(reverse、sort)、(push、unshift)、(shift、pop)、splice】、【slice、concat、join、reduce】 |
11.函数 | 函数定义(函数声明、函数表达式、函数参数、return)、函数调用、arguments、作用域、对象方法、构造函数、function.prototype |
12.Date | new Date(), Date.getXXXX(),格式化, Date.setXXX(),求天数, Date.getTime() |
13.RegExp | 字符类、元字符、量词、多选分支、转义、捕获、匹配模式 |
14.JSON | 定义,JSON.parse(),JSON.stringify |
2.进阶篇 | 1.类型进阶 | 参数识别应用场景(字符串和数组的例子)、类型识别方法:typeof,constructor,Object.prototype.toString,instanceof和其他(Array.isArray, isNaN)、类型转换(所有的方法+隐式转换) |
2.函数进阶 | 函数定义(函数声明、函数表达式、new Function)、arguments(callee、转数组)、apply、call、bind、高阶函数(AOP、curry、记忆函数) |
3.原型 | 原型(概念)、构造函数、原型链(原型链,原型链查找,原型链修改,原型链删除,Function.prototype,Object.prototype)、原型继承 |
4.变量作用域 | 动态作用域和静态作用域,词法环境(函数作用域),作用域链,with/catch |
5.闭包 | 闭包举例、闭包原理、闭包应用 |
6.面向对象 | JS面向对象
|