一.ES6入门
1.ES6是一个泛指,含义是5.1版本以后的JavaScript的下一代标准
Node.js是JavaScript的服务器运行环境,它对es6的支持度更高
2.Bable
Bable是一个可以将es6转换为es5代码的转换器
Bable的安装
npm install --global babel-cli
安装预设并添加配置文件 .babelrc
npm install --save-dev babel-presets-latest
babel的转化、
babel a.js --out-file b.js 把es6的a.js转化为es5并重命名为b.js
babel src --out-dir dist 把src文件夹转化为dist文件夹
注:–save-dev 安装的是开发依赖
–save 安装的是产品依赖
–global 是否全局安装
重点:只使用babel转换的话只会对语法进行转化(let const=>var) 不会对新的API进行转换
如果要对API进行转换的话,就要使用babel polyfill(垫片)进行转换
npm install --save babel-polyfill
js文件中引入垫片import “babel-polyfill”
3.es6模块化
AMD:服务于客户端
CommonJs:服务于服务器,是NodeJS的内置转化规则,运行时确认版块之间的关系
导出:module.export导出的是一个对象,所有的模块都是module的实例
导入:接收时也必须用一个对象接收 let {obj} = require"././"
注:在v13.2版本之后,node.js就默认打开了es6模块支持,要在package.json中设置[“type”:“module”]
es6模块化:设计模式是尽量的静态化,在编译时运行,就可以确认版块之间的关系,已经输入输出变量的值
导出:export 导出的是一个接口 默认导出:export default接口只有一个
导入:import import “age” from “test1”
注:es6在编译时完成加载,效率要比CommonJs的效率高
es6模块化遵循严格模式,模块头部都会默认加上"use strict"
es6模块化和CommonJS的区别
1.CommonJs输出是一个值的拷贝,而es6模块化是对值的一个引用
2.CommonJs是在运行时加载,而es6模块化是在编译时加载
初始ES6
最新推荐文章于 2024-07-24 11:09:48 发布