前端面试理论题
★文档类型的作用是什么?你知道多少种文档类型?
★浏览器标准模式和怪异模式之间的区别是什么?
★使用XHTML的局限有那些?
如果页面使用application/xhtml+xml会有什么问题吗?
★如果网页内容需要支持多语言,你会怎么做?
★在设计和开发多语言网站时,有哪些问题你必须要考虑?
★在HTML5的页面中可以使用XHTML的语法吗?
★在HTML5中如何使用XML?
★data-属性的作用是什么?
★如果把HTML5看作做一个开放平台,那它的构建模块有那些?
★请描述一下cookies、sessionStorage和localStorage的区别?
★你使用过那些Javascript库?
★你是否研究过你所使用的JS库或者框架的源代码?
★什么是哈希表?
★undefined变量和undeclared变量分别指什么?
★闭包是什么,如何使用它,为什么要使用它?
你喜欢的使用闭包的模式是什么?
★请举出一个匿名函数的典型用例?
★请解释什么是Javascript的模块模式,并举出实用实例。
·如果有提到无污染的命名空间,可以考虑加分。
·如果你的模块没有自己的命名空间会怎么样?
★你如何组织自己的代码?是使用模块模式,还是使用经典继承的方法?
★请指出Javascript宿主对象和内置对象的区别?
★指出下列代码的区别:
functionPerson{}varperson=Personvarperson=newPerson★.call和.apply的区别是什么?
★请解释Funciton.prototype.bind的作用?
★你如何优化自己的代码?
★你能解释一下JavaScript中的继承是如何工作的吗?
★在什么时候你会使用document.write?
★请指出浏览器特性检测,特性推断和浏览器UA字符串嗅探的区别?
★请尽可能详尽的解释AJAX的工作原理。
★请解释JSONP的工作原理,以及它为什么不是真正的AJAX。
★你使用过JavaScript的模板系统吗?
如有使用过,请谈谈你都使用过那些类似库文件。比如Mustache.js、Handlebars等等。
★请解释变量声明提升。
★请描述一下事件冒泡机制。
★attribute和property的区别是什么?
★为什么扩展JavaScript内置对象是个坏做法?
★为什么扩展JavaScript内置对象是个好做法?
★请指出documentload和documentready的区别。
★==和===有什么不同?
★你如何获取浏览器URL中查询字符串中的参数。
★请解释一下JavaScript的同源策略。
★请解释一下事件代理。
★请描述一下JavaScript的继承模式。
★如何实现下列代码:
[1,2,3,4,5].duplicator;//[1,2,3,4,5,1,2,3,4,5]★描述一种JavaScriptmemoization的策略。
★什么是三元条件语句?
★函数的参数元是什么?
★什么是usestrict?使用它的好处和坏处分别是什么?