Babel 只负责编译新标准引入的新语法,比如 Arrow function、Class、ES Module 等,它不会编译原生对象新引入的方法和 API,比如 Array.includes,Map,Set 等,这些需要通过 Polyfill 来解决

1.setTimeout-原生的setTimeout传递的第一个函数不能带参数,通过闭包可以实现传参效果。 function f1(a) { function f2() { console.log(a); } return f2; } var fun = f1(1); setTimeout(fun,1000);//一秒之后打印出1 2.回调绑定到事件 3.函数防抖 4.封装私有变量

vue 的模版语法,是一种形象描述视图的标记语言,在通过 vue 的 vue-template-compiler 解析成 render 函数,通过 vnode 加上 diff 算法统一替换 dom 形成真实视图,所以 vue 和 react 在本质上类似,也就是说 vue 可以和 react 一样通过 jsx 来描绘视图,不同的是 vue 提供了一套更符合前端思维的标记语言