通过写Babel插件理解抽象语法树(翻译)
原文:https://www.sitepoint.com/understanding-asts-building-babel-plugin/
每天很多JavaScript开发者使用了浏览器提供商还没有实现的语言版本。很多语言特性都只是草案,将来并不能保证会被写进标准。因为了有了Bable项目,才成为了可能。
众所周知,Babel可以把ES6代码转换为ES5代码,并且可以安全运行;同时,Bable允许开发者编写插件在编译时更改JavaScript程序的结构。
今天,我们将看下如何写Bable插件为JavaScript添加默认的不可变数据。这个教程的代码可以从 GitHub仓库下载。
语言概述
我们希望设计允许我们把普通的对象和数组字面量通过使用Mori转换为不可变的数据结构的插件。
我希望这样写代码:
varfoo= { a: 1 }; varb
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
python的Web框架,Django的ORM,模型基础,MySQL连接配置及增删改查
python的Web框架,Django的ORM,模型基础,MySQL连接配置及增删改查 Django中的ORM简介 ORM概念:对象关系映射(Object Relational Mapping,简称ORM): 用面向对象的方式描述数据库,去操作数据库,甚至可以达到不用编写SQL语句就能够对数据库进行增删改查,进行各种操作。我们只需要对python的面向对象熟悉,就可以很清晰的知道各种数据之间的关系。 django模型映射关系: 数据库连接配置 Django支持主流的数据库,都有配置,在setting中配置即可,下面我们看下如何配置MySQL。 db.sqlite3文件的说明 db.sqlite3文件也是数据库文件,Django默认情况下,会配置这个文件,这个文件很小,很多单机、net的用的是这个 Django 连接MySQL的配置流程: 安装 pymysql,用于python操作mysql数据库 pip install pymysql 创建数据库用户,需要有创建数据库权限的用户 创建数据库 #进入数据库,此命令用的root账户。正常是用数据库管理员给的数据库账号 >>...
- 下一篇
HanLPTokenizer HanLP分词器
anlp在功能上的扩展主要体现在以下几个方面:•关键词提取•自动摘要•短语提取•拼音转换•简繁转换•文本推荐 下面是hanLP分词器的代码 注:使用maven依赖 com.hankcs hanlp portable-1.3.4 使用了java8进行处理 import java.util.ArrayList;import java.util.List;import java.util.stream.Collectors; import org.apache.commons.lang3.StringUtils; import com.hankcs.hanlp.seg.Segment;import com.hankcs.hanlp.seg.Dijkstra.DijkstraSegment;import com.hankcs.hanlp.seg.NShort.NShortSegment;import com.hankcs.hanlp.tokenizer.IndexTokenizer;import com.hankcs.hanlp.tokenizer.NLPTokenizer;impor...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- SpringBoot2初体验,简单认识spring boot2并且搭建基础工程
- CentOS8编译安装MySQL8.0.19
- CentOS7,CentOS8安装Elasticsearch6.8.6
- CentOS7编译安装Gcc9.2.0,解决mysql等软件编译问题
- SpringBoot2配置默认Tomcat设置,开启更多高级功能
- SpringBoot2更换Tomcat为Jetty,小型站点的福音
- CentOS7编译安装Cmake3.16.3,解决mysql等软件编译问题
- CentOS关闭SELinux安全模块
- Linux系统CentOS6、CentOS7手动修改IP地址
- SpringBoot2编写第一个Controller,响应你的http请求并返回结果