http://mooc.study.163.com/course/NEU-1000054003#/info
基础篇
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
进阶篇
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面向对象