- 博客(3)
- 收藏
- 关注
原创 Babel
背景ES6为Javascript添加了诸多强大的语法但是由于浏览器版本更新较慢这些语法再很多浏览器上是不支持的。nodeJs的流行使编译这个词在前端领域不在那么陌生。基于以上两点Babel诞生了,Babel借助进NodeJs操作文件的能力将ES6版本的Js语法转换为向后兼容的 JavaScript 语法,以便能够运行在当前和旧版本的浏览器或其他环境中。工具包Babel将ES6代码转化为AST(抽象语法树),然后经过一系列的插件转化为新的AST最终再将AST转化为目标代码Babel是一个工具
2020-10-17 18:11:53 288
原创 Eslint
同类工具对比相对其他语言来说Lint工具在JavaScript显得尤为必要,主要有以下几个原因:JavaScript被设计的过于灵活写法太多导致个人代码风格不一致;JavaScript设计缺陷较多比如和=,比较容易造成错误。ESLint诞生之前已经有几款JavaScript校验工具JSLint、JSHint、JSCS,目前ESLint是使用最广泛的JavaScript校验工具。四款工具对比如下Eslint最大的特点就是可扩展性,对于本来不支持的语法可以通过自定义解析器或者开发插件达到想要的功能
2020-10-17 18:04:02 407
原创 ES Module与commonJs
模块: 将一个复杂的程序在开发阶段拆分成一个个独立的单元,在运行时再组合在一起,同时各个单元内的数据是私有的可暴露出api供其他单元调用。在前端发展历史中经历了多个模块化方案,起出比较自执行函数和对象命名空间到amd、cmd等模块化库。如今最常用的模块化规范是commonJs规范和es6模块化。commonJscommonJs每个文件都是单独的模块,模块内部的变量、函数、类等都是私有的,因此不会有变量污染。模块定义: math.jsexports.add = function(a, b){ re
2020-10-17 17:55:59 1776
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人