因为自己最近也在准备面试,就打算写一些有关面试的东西,也算加深记忆;
1.meta标签的定义
meta标签是head部的一个辅助性标签,提供关于HTML文档的元数据,他并不会显示在页面上,但对于机器是可读的,可用于浏览器(如何显示内容或重新加载页面),SEO或其他web服务。
作用
seo优化,定义页面使用语言,自动刷新并指向新的页面,实现网页转换的动态效果,控制页面缓冲,网页定级评价,控制网页显示的窗口。
2.ajax的过程
(1)创建XHR对象,也就是创建一个异步调用对象。
(2)创建一个新的http请求,并指定请求的方法,url及验证信息
(3)设置响应http请求状态变化的函数
(4)发送http请求
(5)获取返回的数据
(6)使用dom和js实现局部刷新
3.什么是闭包
闭包其实相对于比较难理解一些,不过它基本可以解释为是在另一个作用域内创建一个封闭的词法范围。
闭包另一个应用是创建私有变量和方法。
在JS中没有明确的方法来创建私有方法,但闭包可以有私有方法。
4.this关键字
this一般表示当前所在对象。
js中的This关键字由函数的调用者决定,谁调用this就指向哪个,如果找不到调用者,this将指向windows对象。
5.js如何处理同步和异步
js是一种只有一个调用堆栈的单线程编程语言。但它也可以使用一个称为事件循环(event loop)的机制来处理一些异步函数。
异步函数不会立即进入调用堆栈,而是被推入任务队列,并在调用堆栈为空后进行。
将事件从任务队列传输到调用堆栈称为事件循环。