1、`==`和`===`的区别
双等号判断时,只需要值相等
三等号判断时,需要值与类型都相等
2. 函数声明与函数表达式的区别?
函数声明就通过function声明函数,比如function show(){}
可以声明函数之前来调用函数
函数表达式把一个函数作为一个表达式赋值给变量,var show = function(){}
不可以在函数赋值之前调用
3. 数组方法pop() push() unshift() shift()
pop() 数组尾部删除元素
push() 数组尾部添加元素
unshift() 数组头部添加元素
shift() 数组头部删除元素
4. ajax请求的时候get 和post方式的区别
get请求:参数跟在url后面、安全性不高、速度快、能传输的数据比较小、一般用于获取、删除
post请求:参数放在请求体中、安全性较高、速度慢、能传输的数据大、一般用于修改、添加、登录、注册
5. 解释什么是json:
json是一种轻量级的数据格式,用于数据传递
里边只允许出现双引号
JSON的语法表示三种类型值,简单值(字符串,数值,布尔值,null), 数组,对象
6. dom事件委托什么原理,有什么优缺点
事件委托原理:
事件冒泡机制,把子元素的事件行为 委托给 父级元素执行
优点:
1.可以大量节省内存占用,减少事件注册
2.可以实现当新增子对象时,无需再对其进行事件绑定
缺点:
如果把所有事件都用事件代理,可能会出现事件误判
7. Javascript的事件流模型都有什么?
“事件冒泡”:事件逐级向上传播
“事件捕捉”:事件逐级向下传播,一直到最具体的
“DOM事件流”:三个阶段:事件捕捉,目标阶段,事件冒泡
8. split() join() 的区别
split()以指定的字符分割字符串,返回数组
join()以指定的字符拼接数组元素,返回字符串
9. 如何阻止事件冒泡
ev.stopPropagation();
10. 如何阻止默认事件
答案:return false 与 event.preventDefault();