首页 > 其他分享 >如何将ES6转换成ES5?

如何将ES6转换成ES5?

时间:2022-11-22 09:01:04浏览次数:39  
标签:ES6 ES5 转换成 name src babel js es6

https://blog.csdn.net/qq_40127119/article/details/126953912

 

一、 介绍
ECMAScript 6(ES6)的发展速度非常之快,但现代浏览器对ES6新特性支持度不高,所以要想在浏览器中直接使用ES6的新特性就得借助别的工具来实现。

Babel是一个广泛使用的转码器,babel可以将ES6代码完美地转换为ES5代码,所以我们不用等到浏览器的支持就可以在项目中使用ES6的特性。

二、使用
1、新建工程文件夹这里起名叫做es6,然后在里面创建两个文件夹分别为src 、js如下图:(src为待转换es6 js存放目录,js为编译完成后的es5 js存放目录)

2、在src目录下新建一个js文件(这里起名叫做index.js),里面输入es6的代码:

let b = 1;
console.log(b);
const name = '张三';
console.log(name);
let c = '成功了么';
setTimeout(() => {
console.log(c)
}, 200)
3、 初始化项目

1)打开终端命令提示符 进入工程目录(这里也就是es6文件夹)输入如下命令初始化项目:(这里用的npm,国内用户建议用cnpm不懂得可以移步至淘宝镜像使用)命令执行完成后会在根目录生成package.json文件。

npm init -y //-y是指表示全部默认,不需要一个一个敲回车
2)打开我们可以看到里面的内容(可以根据自己的需要进行修改,比如我们修改name的值。)

{
"name": "es6",
"version": "1.0.0",
"description": "",
"main": "index.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"author": "",
"license": "ISC"
}
三、全局安装babel工具
1)在终端中输入以下命令,

npm install -g babel-cli
2)虽然已经安装了babel-cli,只是这样还不能成功进行转换,我们还需要安装转换包才能成功转换。

npm install --save-dev babel-preset-es2015 babel-cli
3)安装完成后,我们可以看一下我们的package.json文件,已经多了devDependencies选项。

{
"name": "es6",
"version": "1.0.0",
"description": "",
"main": "index.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1",
"dev":"babel src --out-dir js"
},
"author": "",
"license": "ISC",
"devDependencies": {
"babel-cli": "^6.26.0",
"babel-preset-es2015": "^6.24.1"
}
}
四、新建.babelrc
在项目根目录新建(.babelrc)文件输入如图所示代码:

{
"presets":[
"es2015"
],
"plugins":[]
}
五、现在你可以尽情转换了
终端输入如下命令:(babel 待转换路径/ --out-dir 转换后路径/)
我们这里是从src转换到js目录下

babel src --out-dir js
现在我们js目录下面就生成了编译后的js我们打开看一下(大功告成)
是不是每次这样输入一大串命令感觉很麻烦?
通过修改package.json里面的别名来实现编译 修改(“dev”:“babel src --out-dir js”)

{
"name": "es6",
"version": "1.0.0",
"description": "",
"main": "index.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1",
"dev":"babel src --out-dir js"
},
"author": "",
"license": "ISC"
}
以后你只需要如下命令就可以编译了(是不是感觉很简单呢)

npm run dev
————————————————
版权声明:本文为CSDN博主「猿大师」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_40127119/article/details/126953912

标签:ES6,ES5,转换成,name,src,babel,js,es6
From: https://www.cnblogs.com/chinasoft/p/16914066.html

相关文章

  • ES6之导入NPM包
    NPM和模块化结合使用 前提是要先安装node.js如果在vscode的终端中一直不成功的话,可以在cmd里,以管理员身份来安装jquery:  下面是使用方法://修改背景颜色为粉色......
  • ES6之模块化
    模块化模块化是指将一个大的程序文件,拆分成许多小的文件,然后将小文件组合起来。 模块化的好处模块化的优势有以下几点:1)防止命名冲突2)代码复用3)高维护性 模......
  • ES6之对象方法扩展
    对象扩展ES6新增了一些Object对象的方法1)Object.is比较两个值是否严格相等,与『===』行为基本一致(+0与NaN)2)Object.assign对象的合并,将源对象的所有可枚举属性......
  • ES6之class
    class类ES6提供了更接近传统语言的写法,引入了Class(类)这个概念,作为对象的模板。通过class关键字,可以定义类。基本上,ES6的class可以看作只是一个语法糖,它的绝大部分......
  • ES6之数值扩展
    <!DOCTYPEhtml><htmllang="en"><head><metacharset="UTF-8"><metaname="viewport"content="width=device-width,initial-scale=1.0"><title>数值......
  • ES6之Set
    SetES6提供了新的数据结构Set(集合)。它类似于数组,但成员的值都是唯一的,集合实现了iterator接口,所以可以使用『扩展运算符』和『for…of…』进行遍历,集合的属性和方法:......
  • ES6之Map
    MapES6提供了Map数据结构。它类似于对象,也是键值对的集合。但是“键”的范围不限于字符串,各种类型的值(包括对象)都可以当作键。Map也实现了iterator接口,所以可以使用......
  • ES6之Promise
    PromisePromise是ES6引入的异步编程的新解决方案。语法上Promise是一个构造函数,用来封装异步操作并可以获取其成功或失败的结果。1)Promise构造函数:Promise(e......
  • ES6之生成器
    生成器生成器函数是ES6提供的一种异步编程解决方案,语法行为与传统函数完全不同比如:function*gen(){yield'一只没有耳朵';yield'一只没有尾巴';return'真......
  • ES6之迭代器
    迭代器遍历器(Iterator)就是一种机制。它是一种接口,为各种不同的数据结构提供统一的访问机制。任何数据结构只要部署Iterator接口,就可以完成遍历操作。1)ES6创造了一种......