1、宏任务微任务
console.log('start');
new Promise((res)=> {
console.log('new Promise');
res(123);
}).then((a)=> {
console.log(a);
resove();
}).catch(()=> {
console.log('catch')
})
let timer = setTimeout(()=> {
console.log('1000')
},1000);
clearTimeout(timer);
2、隐式转换
function a() {
for(var i=0;i<7;i++){}
console.log(i + '0', typeof i + '0');
}
3、解构赋值 blog.csdn.net/wuxeek/arti…
4、全局变量
全局对象是最顶层的对象,在浏览器环境是 window 对象,在 Node.js 中是 global 对象,ES5 中全局对象的属性与全局变量是等价的,这被视为 JavaScript 语言的一大问题,因为很容易就不知不觉创建了一个全局变量。ES6 改变了这一点,通过var和function声明的全局变量依旧是全局对象的属性,而let、const、class声明的变量不属于全局对象的属性。
var a = 1;
window.a;//1
let b = 2;
window.b;//undefined