基础
1,什么是命名空间,变量污染,变量声明提高,预编译?如何检查一段代码执行后是否声明了全局变量?
2,隐式转换的种种规则
3,关于对象,对象的属性可能有哪些特性(attribute)?什么是原型链?如何检测某一属性是在对象中仍是原型链中?如何检测是不是普通对象或空对象?写一个工厂模式?(工厂模式也有不少细节,具体能够参考《javascript模式》一书,不是《javascript设计模式》)
4,变量类型检测、特性检测以及异常避免
5,setTimeout的特性
6,数组几个API的手工实现
7,事件
8,正则表达式,至少要明白$1和\1的意思和几个API的用法。
9,javascript如何得到随机unicode字符?
10,JSON.parse的参数传一个什么对象的时候不能处理?(能够试试JSON.parse(window))
11,fn.apply的第一个参数是context(函数运行的上下文),那么这个参数传一个数组会怎么处理?
DOM操做
1,实现一些API如getElementsByClass(有不少细节,参见司徒正美的博客)
2,各类宽度高度(clientHeight之类)的含义及各浏览器之间的差别性
3,实现一个带回调函数的插入DOM节点API(须考虑script标签、documentFragment)
CSS操做
1,如何操做CSS的伪类和伪元素?
2,如何检测改浏览器是否支持某个CSS3的特性?
ajax操做
1,get和post的区别及使用要点
2,http协议,包括格式、状态码,cookie操做
3,跨域
4,转换JSON的几种方式,JSON.stringfy有什么使用限制?
性能
1,javascript有哪些性能优化的措施?可看《高性能javascript》
综合:各类插件的设计思路javascript