1.类型转换:parseInt\parseFloat\Number
2.本地对象的方法:
String:concat\split\substring\substr\match\replace
Number:toFixed
Array:concat\join\slice\splice\push\pop\unshift\shift\reverse\sort
RegExp:exec\test
3.DOM操作:
getElementById\getElementsByName
createElement
appendChild\removeChild\replaceChild\insertBefore
4.事件:
attachEvent\addEventListener
事件捕获事件冒泡
5.BOM:
window.location.href
cookie
6.内置对象:
Global和Math
7.函数:函数表达式\作用域链\闭包
8.面向对象:原型\对象冒充\this
9.AJAX:XMLHttpRequset\跨域
PS:那些年,我们踩过的javascript坑:
1.Array的方法,concat\slice是返回副本不在原数组上操作的;reverse\sort\splice是直接在原数组上操作的;还有各个方法的返回值,各个方法的参数
2.通过for-in循环输出的属性名的顺序是不可预测的
3.javascript没有块级作用域,但可以用匿名立即执行函数模仿块级作用域
4.this的指向是在运行的时候确定的
5.函数的执行依赖于变量的作用域,这个作用域是在函数定义时决定的,而不是函数调用时
6.闭包中所记录的自由变量,只是对变量的引用,而非变量的值,当这个变量改变了,闭包里获取的变量值也会改变
7.如果构造函数返回了一个对象,用new生成对象实例时,获取到的是返回的对象
8.若两个变量是对同一个对象的引用,改变了其中一个,另一个,你懂的
9.函数的名称仅仅是一个包含指针的变量而已
10.函数的length是指形参的个数,arguments.length是实际接收到的参数的个数