前端应该掌握的javascript知识
昨天偶然在拨赤的百度空间上看到一篇关于前端javascript面试题的文章,看过后已经接近睡觉的时间,但躺在床上的我却有些失眠了......
拨赤的那篇文章题目叫做招聘javascript程序员时应该问什么问题,大家可以选择去读它,或者继续听我在这里唠叨。
其实,这是stackoverflow上面的一个问答,回答者给了些题目,并且把这些题目分了类:
通用:
使用过类库吗? 最喜欢哪个? 为什么?自己有写过类库吗? 比如 DOM 的扩展。
有使用过服务端 JavaScript 框架吗?
ECMAScript 和 JavaScript 的区别是什么?
有用过 JavaScript 代码校验工具吗?
有读过或推荐的 JavaScirpt 书籍吗?
会为你的 JavaScript 代码写单元测试吗?
初/中级:
为什么基本上所有对象都有 toString 方法?
知道 Mozilla Firefox 用的是哪个解析器吗? 其他浏览器呢?
JavaScript 支持 lambda 函数吗?
你用过或写过的最有用的 JavaScript 函数是什么?
JavaScript 有块级作用域吗?
能解释下 Ajax/XMLHttpRequest 是如何工作的吗?
JavaScript 支持类继承吗?
能写一个用了 with 表达式的代码片段吗?
知道什么是 Greasemonkey 吗? 有用过吗?
你认为 innerHTML 是魔鬼吗?
什么是 JSON?
高级:
Can you give me an example of a generator?
JSONP 是如何工作的?
请举个单例模式的例子。
未定义和未声明之间有什么区别?
有用 Raphaël 或 Canvas 元素做过动画吗?
熟悉 Web Worker 吗?
做过 profiling 吗? 都有用过哪些工具?
有读过新的 ECMAScript 规范吗? 都有哪些新特性?
关于人:
谁最初写了 ECMAScript? 知道他在哪工作,以及他的 title 是什么吗?
写 jQuery 的那男孩叫什么?
谁写了 JSLint?
兼容性:
哪些浏览器支持标准的 addEventListener ?
哪些浏览器对于 getElementById 的实现有问题? 比如它会返回 name 属性一致的元素。
将这些问题从头到尾看了一遍,心中也给了自己的答案。有些知道,有些不知道,有些貌似知道,但又不全知道。有些知其一不知其二,有些一点儿都不懂,有些貌似知道,但实则不懂。就这样,我睡不着了。
还差得远呢,小白!下一个学习目标就是把这些问题逐一解决,拿出答案来!