-
基本类型 数字 string 布尔 undefined null object
-
typeof判断简单类型,instanceof,prototype.tostring.call,Array.isArray判断是对象还是数组
-
垃圾回收机制,变量不被引用自动回收,计数清除法,标记清除
-
cookie会发送给服务器,session关闭页面失效,local永久保存
-
链式调用就是把函数挂载到this上再return出去
-
数组去重 ...new Set() 元素挂载到对象,根据对象属性的唯一性。 indexof
-
new一个对象就是把对象的proto指到方法的prototype上再调用call改变this指向
-
防抖一定时间内触发一次,节流只计算最后一次。通过闭包,额外变量来判断是否为null
-
事件绑定:addEventlinster第三个参数为是否冒泡,阻止冒泡stopPropagation,定义多个方法不覆盖之前的。
-
队列先进先出,栈后进先出 阻止冒泡 e.preventDefault
-
事件循环遇到await不会立即执行后面的console,await后面的代码当成then里面的操作
-
js加载阻塞解决 script添加async属性
-
跨域,协议域名端口一个不一致就是跨域,jsonp请求,设置datatype为jsonp,后端把数据放在回调函数里。原理是script不受限制,access-control *号代表所有请求都接受。proxy
-
反转字符串,split转数组,reverse反转数组,join拼接
-
promisee.all指都成功返回一个数组
-
commonjs是require,module.export是运行时解析,是值的拷贝
-
es6的import和export是加载时解析,是值的引用
-
队列先进先出,所以eventloop才会由同步到微任务到宏仁务依次输出,只代表输出顺序,加载还是同步宏微
-
foreach和map的区别map返回新数组,foreach无返回值,map比foreach快
-
proto是隐式的,prototype是显式的,属性共享的,是函数独有的。
-
js异步编程方式 callback promise async yeild next()