ECMAScript 6(以下简称ES6)是JavaScript语言的下一代标准,已经在2015年6月正式发布了。它的目标,是使得JavaScript语言可以用来编写复杂的大型应用程序,成为企业级开发语言。

学习ES6之前,我们可以先来看一下各大浏览器的最新版本对ES6的支持,点击这里

我们可以使用以下几种环境去学习ES6

使用最新版本的Chrome或者Chromium

来说一下在Ubuntu下,如何升级到最新的Chromium,需要执行如下命令即可。

sudo add-apt-repository ppa:chromium-daily
sudo apt-get update
sudo apt-get install chromium-browser

然后需要开启对ES6的支持,访问chrome://flags/#enable-javascript-harmony页面,开启这个特性。

然后你就可以在Chromium的console中使用ES6了。

使用Node.js

建议更新到Node的最新版本,或者最新的稳定版本,这样Node对ES6的支持可能会多一些。

升级Node可以使用nvm或者n等版本管理工具。

我使用的是n,命令入下:

// 全局安装n
sudo npm install -g n
// 安装制定版本
n 5.6.0
// 安装最新的版本
n latest
// 安装稳定版本
n stable
// 删除某个版本
n rm 5.6.0
// 以指定的版本来执行脚本
n use 5.6.0 some.js

我安装了稳定版本,当前是5.6.0

可以使用如下命令查看当前版本的Node对ES6的支持

node --v8-options | grep harmony

使用的时候只需要带上--harmony参数

node --harmony
node --harmony test.js

使用Babel

Babel是一个广泛使用的ES6转码器,可以将ES6代码转为ES5代码,从而在现有环境执行。这意味着,你可以用ES6的方式编写程序,又不用担心现有环境是否支持。

如何安装Babel我就简单举一个例子。以一个test项目为例。

先创建test文件夹,然后在该文件夹下执行npm init,初始化package.json文件,然后修改为如下的内容:

{
"name": "test",
"version": "1.0.0",
"description": "A babel test project",
"main": "index.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1",
"build": "babel src -d lib"
},
"author": "HarrySun",
"license": "MIT",
"devDependencies": {
"babel-cli": "^6.6.4",
"babel-preset-es2015": "^6.6.0"
}
}

其中scripts中的build命令,是指将src下的文件夹里的es6的js文件转化成es5的js文件。

然后执行一下npm install,安装babel-cli和babel-preset-es2015包。

最后创建一下.babelrc配置文件,命令如下:

echo '{ "presets": ["es2015"] }' > .babelrc

这个项目的例子,请点击这里

给一个官网地址,大家可以根据不同的环境就自己的需求选择。Babel Setup

ES6学习--搭建环境的更多相关文章

  1. ES6学习之环境配置

    环境配置 一.建立工程目录 新建dist文件夹(用于存放转化的es5文件).新建src文件夹(用于存放es6文件),在该文件夹下建立index.js文件 二.编写index.html 在根目录下新建i ...

  2. maven学习-搭建环境

    1.Maven是基于项目对象模型(POM),可以通过一小段描述信息来管理项目的构建,报告和文档的软件项目管理工具. 2.下载: maven.apache.org 3.bin目录包含mvn的运行脚本: ...

  3. ES6的开发环境搭建

    在搭建es6开发环境之前,先简单介绍一下es6. ECMAScript 6.0(以下简称 ES6)是 JavaScript 语言的下一代标准,已经在2015年6月正式发布了.它的目标,是使得 Java ...

  4. 一.ES6的开发环境搭建

    前言: 现在的Chrome浏览器已经支持ES6了,但是有些低版本的浏览器还是不支持ES6的语法,这就需要我们把ES6的语法自动的转变成ES5的语法.Webpack是有自动编译转换能力的,除了Webpa ...

  5. AspectJ基础学习之二搭建环境(转载)

    AspectJ基础学习之二搭建环境(转载) 一.下载Aspectj以及AJDT 上一章已经列出了他的官方网站,自己上去download吧.AJDT是一个eclipse插件,开发aspectj必装,他可 ...

  6. springMVC学习篇 - 搭建环境及关键点

    springMVC是spring家族中一个重要的组件,和struts一样作为一套前台框架被广泛的应用于各种项目. 之前在很多项目组都用到springMVC,只感觉很强大,但是对这套框架的知识了解比较少 ...

  7. 深度学习开发环境搭建教程(Mac篇)

    本文将指导你如何在自己的Mac上部署Theano + Keras的深度学习开发环境. 如果你的Mac不自带NVIDIA的独立显卡(例如15寸以下或者17年新款的Macbook.具体可以在"关 ...

  8. ubuntu16.04系统深度学习开发环境、常用软件环境(如vscode、wine QQ、 360wifi驱动(第三代暂无))搭建相关资料

    事后补充比较全面的(找对资料真的省一半功夫):https://www.jianshu.com/p/5b708817f5d8?from=groupmessage Ubuntu16.04 + 1080Ti ...

  9. pyqt4学习之一:搭建环境和入门

    还在继续写Python小工具,想起之前用Tkinter被坑得半死,决定换个框架写UI,又想顺便了解一下qt,就学习一下pyqt4 搭建环境 win:现在安装包 http://www.riverbank ...

随机推荐

  1. Web前端面试之HTML

    1. 对WEB标准以及W3C的理解与认识 web标准规范要求,书写标签闭合.小写.不乱嵌套,可提高搜索机器人对网页内容的搜索几率.--- SEO 使用外链css和js脚本,结构与行为.结构与表现分离, ...

  2. LeetCode题目按公司分类

    LinkedIn(39) 1 Two Sum 23.0% Easy 21 Merge Two Sorted Lists 35.4% Easy 23 Merge k Sorted Lists 23.3% ...

  3. asp.net 验证码(一)Session

    1.模板页 //创建网页模板 输入验证码文本框 并且将文本框中的内容发送的后端验证中去 <p>请输入验证码:<input type="text" name=&qu ...

  4. 【转】ubuntu下最好用的输入法fcitx-sunpinyin

      http://www.freetstar.com/index.php/ubuntu-most-use-friendly-fcitx-sunpinyin 今天难得折腾一会儿输入法,对于系统美化方面的 ...

  5. [Window Title] (没有登录) [Content] ORA-12514: TNS: 监听程序当前无法识别连接描述符中请求的服务 [OK]

    重启Oracle服务

  6. DRY(Don't Repeat Yourself )原则

    凡是写过一些代码的程序猿都能够意识到应该避免重复的代码和逻辑.我们通过提取方法,提取抽象类等等措施来达到这一目的.我们总能时不时的听到类似这样的话:”把这些公用的类放到shared项目去,别的项目还要 ...

  7. 剑指Offer面试题:24.复杂链表的复制

    一.题目:复杂链表的复制 题目:请实现函数ComplexListNode Clone(ComplexListNode head),复制一个复杂链表.在复杂链表中,每个结点除了有一个Next指针指向下一 ...

  8. nodejs事件轮询详述

    目录 概述 nodejs特点 事件轮询 关于异步方法 概述 关于nodejs的介绍网上资料非常多,最近由于在整理一些函数式编程的资料时,多次遇到nodejs有关的内容.所以就打算专门写一篇文章总结一下 ...

  9. 玩转Windows服务系列——创建Windows服务

    创建Windows服务的项目 新建项目->C++语言->ATL->ATL项目->服务(EXE) 这样就创建了一个Windows服务项目. 生成的解决方案包含两个项目:Servi ...

  10. Outlook HTML渲染引擎

    OutLook始终不离不弃 是不是很讨厌为Email代码兼容Outlook? 太遗憾了!虽然光都有尽头,但Outlook始终存在. 为了应付Email的怪癖,我们花了很多时间测试,确保我们搞定了所有O ...