首页 > 个性签名 正文
【网名转换器】JavaScript、ES6、模块化(export和import)、Babel代码编解码器

时间:2023-02-13 04:41:15 阅读: 评论: 作者:佚名

模块化编程

模块化是对代码进行拆分,以便于重用。与Java中的dopo一样,要使用包,必须先导入包。JS没有软件包的概念。模块。

模块功能主要包括export和import包含两个命令。

1、规定模块外部接口的export命令;

2、import命令,获取其他模块提供的功能;

代码方案:

Common.js

//定义对象

Const utils={

总计(a,b) {

return a b;

}

}

//批量导出

Export {utils}

Common2.js

//定义对象

Export const utils2={

总计(a,b) {

return a b;

}

}common3.js

//定义对象

Export default{

总计(a,b) {

return a b;

}

}u

//export还可以导出基本类型变量、函数、数组、对象等。

Var userId=1234

Var userName=' jiaoge

//函数

Functionadduser (userid、username) {

con(' add user()' userid ' ' username);

}

Export {userid,username,adduser} demo.js

//导入

导入实用程序from '

“Import {userid,username,adduser} from”。/u '

//调用

U(1,2);

con(' userId=' userId);

con(' userName=' userName);

AddUser(2345,' Sunshuao ');

//名字必须正确

导入实用程序2 from '

//调用

U(3,4);

//default默认值

" Import common from "。

//调用

Common.sum(5,6);杠铃

公式:Babel是JavaScript编译器,Babel是将ES6代码转换为ES5代码的常用编解码器。换句话说,您不必担心现有环境是否受支持,而是将程序转换为ES6,成为ES5程序。

安装:NPM install - global babel-cli

检查安装是否成功:babel - version

Babel提供了相应的转换器。

1、将babel-preset-es2015、es2015版本的js转换为es5。

2、将babel-preset-es2016、es2016版本的js转换为es5。

3、将babel-preset-es2017、es2017版本的js转换为es5。

安装:NPM install-save-dev babel-preset-es 2015

安装:NPM install-save-dev babel-preset-es 2016

方案:

Demo.js(资料来源:复制参考资料)

Class Animal {

Constructor(){

='animal '

}

Says(say){

Con(' says' say)

}

}

Let animal=new Animal()

animal . says(' hello ')

Class Cat extends Animal {

Constructor(){

Super()

='cat猫'

}

}

Let cat=new Cat()

Cat.says('hello ')会发出转换指令(cmd)

babeldemo . js-presets es 2015-o demo _ e

转换的内容:

' use strict '

var _ create class=function(){ function define properties(target,props){ for(var I=0;I;I){ var descriptor=props[I];De=de | | falseDe=真;if(' value ' in descriptor)de=true;Object.defineproperty (target、de、descriptor);}} return function (constructor、protoprops、static props){ If(protoprops)define propertie、protopropropertieReturn Constructor} }();

function _ possibleconstructorreturn(self,call) {if(!self){ throw new reference error(' this hasn ' t been initialised-super()hasn ' t been called);} return call(type of call===' object ' | | type of call==' function ')?科尔:自助;}

Function _ inherits (subclass,super class){ if(type of super class!=='function' superClass!==null){ throw new typeerror(' super expression must either be null or a function,not ' type of super class);}=object.create (superclass,{ constructor : { value : sub class,enumerable 3360 false,writable 3330 If)Object.setprototypeof (subclass,super class):=super class;}

function _ class call check(instance,constructor) {if(!(建筑实例){ throw new typeerror(' cannot call a class as a function ');}}

Var Animal=function () {

Function Animal() {

_classCallCheck(this,Animal);

=' animal

}

_createClass(Animal,[{

身高:' says '

Value: function says(say) {

con(' says ' say);

}

}]);

Return Animal

}();

var Animal=new Animal();

animal . says(' hello ');

Var Cat=function (_Animal) {

_inherits(Cat,_ Animal);

Function Cat() {

_classCallCheck(this,Cat);

var _ this=_ possibleconstructorreturn(this,| | object.getprototypeof (cat))。call (this)

_='cat猫'

Return _ this

}

Return Cat

}(Animal);

var Cat=new Cat();

cat . says(' hello ');

启动浏览器:

Demo.html

!DOCTYPE html

Html lang='en '

头(电影)

meta charset=' utf-8 '

元名称=' viewport ' content=' width=device-width,initial-scale=1.0 '

meta http-equiv=' x-ua-compatible ' content=' ie=edge '

标题es 2015/标题

/head

菩提

Scriptsrc=' demo _ e'/脚本

/body

/html

  • 评论列表

发表评论: