位置: IT常识 - 正文

Javascript 模块导入导出(import export)(javascript导入包)

编辑:rootadmin
Javascript 模块导入导出(import export)

推荐整理分享Javascript 模块导入导出(import export)(javascript导入包),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:javascript module,js模块的使用规则,javascript导入包,javascript module,javascript modules,js 模块 modules,js 模块 modules,js模块导入导出,内容如对您有帮助,希望把文章链接给更多的朋友!

笔者开始学习 Javascript 的时候,对模块不太懂,不知道怎么导入模块,导出模块,就胡乱一通试

比如 import xx from 'test.js' 不起作用,就加个括号 import {xx} from 'test.js'

反正总是靠蒙,总有一种写法是对的,其实还是没有理解,还是不懂

尤其是在当初写 www.helloworld.net 网站的时候,一遇到这种问题,就懵逼了,尤其是引入第三方库的时候

这种情况下更多,此篇文章也是为了怕以后忘记,自查用的,也希望能帮助更多的朋友,此篇文章只是针对 ES6 的模块相关知识

首先要知道 export,import 是什么

我们知道,JS 模块导入导出,使用 import , export 这两个关键字

export 用于对外输出本模块

import 用于导入模块

也就是说使用 export 导出一个模块之后,其它文件就可以使用 import 导入相应的模块了

下面我们具体看看, import 和 export 到底怎么用?怎么导出模块(比如变量,函数,类,对象等)

1 导出单个变量

//a.js 导出一个变量,语法如下export var site = "www.helloworld.net"//b.js 中使用import 导入上面的变量import { site } from "/.a.js" //路径根据你的实际情况填写console.log(site)//输出:www.helloworld.net

2 导出多个变量

上面的例子是导出单个变量,那么如何导出多个变量呢

//a.js 中定义两个变量,并导出 var siteUrl="www.helloworld.net" var siteName="helloworld开发者社区" //将上面的变量导出 export { siteUrl ,siteName } // b.js 中使用这两个变量 import { siteUrl , siteName } from "/.a.js" //路径根据你的实际情况填写 console.log(siteUrl)//输出:www.helloworld.net console.log(siteName)//输出:helloworld开发者社区

3 导出函数

导出函数和导出变量一样,需要添加 { }

//a.js 中定义并导出一个函数function sum(a, b) { return a + b}//将函数sum导出export { sum } //b.js 中导入函数并使用import { sum } from "/.a.js" //路径根据你的实际情况填写console.log( sum(4,6) ) //输出:10

4 导出对象

Javascript 模块导入导出(import export)(javascript导入包)

js 中一切皆对象,所以对象一定是可以导出的,并且有两种写法

4.1 第一种写法

使用 export default 关键字导出,如下

//a.js 中,定义对象并导出, 注意,使用export default 这两个关键字导出一个对象export default { siteUrl:'www.helloworld.net', siteName:'helloworld开发者社区'}//b.js 中导入并使用import obj from './a.js' //路径根据你的实际情况填写console.log(obj.siteUrl)//输出:www.helloworld.netconsole.log(obj.siteName)//输出:helloworld开发者社区

4.2 第二种写法

同样是使用 export default 关键字,如下

//a.js 中定义对象,并在最后导出var obj = { siteUrl:'www.helloworld.net', siteName:'helloworld开发者社区'}export default obj//导出对象obj//b.js 中导入并使用import obj from './a.js' //路径根据你的实际情况填写console.log(obj.siteUrl)//输出:www.helloworld.netconsole.log(obj.siteName)//输出:helloworld开发者社区

5 导出类

导出类与上面的导出对象类似,同样是用 export default 关键字,同样有两种写法

5.1 第一种写法

//a.js 中定义一个类并直接导出export default class Person { //类的属性 site = "www.helloworld.net" //类的方法 show(){ console.log(this.site) }}//b.js 中导入并使用//导入类import Person from './a.js'//创建类的一个对象personlet person = new Person()//调用类的方法person.show() //输出:www.helloworld.net

5.2 第二种写法

//a.js 中定义一个类,最后导出class Person { //类的属性    site = "www.helloworld.net" //类的方法 show(){ console.log(this.site) }}//导出这个类export default Person //b.js 中导入并使用//导入类import Person from './a.js'//创建类的一个对象personlet person = new Person()//调用类的方法person.show() //输出:www.helloworld.net

小结

下面我们简单总结一下

export 与 export default 的区别

export 与 export default 均可用于导出常量、函数、文件、模块等

可以在其它文件或模块中通过 import+(常量 | 函数 | 文件 | 模块) 名的方式,将其导入,以便能够对其进行使用

export default 后面不能跟 const 或 let 的关键词

export、import 可以有多个,export default 仅有一个。

通过 export 方式导出,在导入时要加 { },export default 则不需要

export 具名导出 xxx ,export default 匿名。区别在于导入的时候,export 需要一样的名称才能匹配,后者无论取什么名都可以。

模块化管理中一个文件就是一个模块,export 可以导出多个方法和变量,export default 只能导出当前模块,一个 js 文件中只支持出现一个

对于import ,export , export default ,他们的用法上面的例子已经很详细的列出了,忘记的时候,可以当作参考看看

最重要的还是要明白为什么要这么写,实在不明白记住就行了。

本文链接地址:https://www.jiuchutong.com/zhishi/297695.html 转载请保留说明!

上一篇:vue项目 移动端适配——rem(vue项目移动端怎么做适配)

下一篇:Vue3中watch监听对象的属性值,监听源必须是一个getter函数(vue watch监听localstorage变化)

  • 外币借款本金的汇兑差额
  • 研发费用可以列支成本吗
  • 其他债权投资发生减值的账务处理
  • 税控盘未清卡怎么办
  • 电子发票冲红处理
  • 资产负债表其他应收款怎么填列
  • 注销了出口退税怎么办
  • 财产保险合同印花税计税依据
  • 现金账怎么记账图例
  • 公益性支出所得税扣除比例
  • 公司拓展训练入什么会计科目核算做分录?
  • 其他综合收益转入留存收益还是投资收益
  • 房地产 结转
  • 应收贷方余额怎么处理
  • 存货周转率多少好
  • 公司筹建期间
  • 上年的应收帐款在本年度如何录入?
  • 股权投资类企业税收政策
  • 房屋征收服务中心是干什么的
  • 印花税计入应交税费需要调整吗
  • 企业所得税税收优惠方式有哪些
  • 本期有进项没有销项需要转出增值税吗?
  • 收取线路维护费合法吗
  • 印花税计入股票成本吗
  • 定额发票验旧怎么操作
  • 母公司给子公司担保
  • 签发空头支票的赔偿金
  • 专用发票的开票人收款人复核人都要开齐吗
  • 员工招待费会计分录
  • windows修复网络
  • wordpress相关文章插件
  • 笔记本电池的正负极区分
  • 电脑文件删除如何找到
  • php destruct
  • 计算机与自动化的关系
  • 解决方案啥意思
  • 汇总纳税企业总分机构信息备案
  • 哪些收入不列入交纳党费计算基数
  • react组件定义
  • php点运算符
  • python中有很多包管理工具
  • 综合所得内容有哪些
  • 永续债利息可以扣除嘛
  • 小规模申请一般纳税人的条件
  • css的flex:1
  • 生产企业出口货物必须以什么为计税依据计算免抵退税额
  • 外汇保值业务的特点包括
  • 查看db2状态
  • 企业申报纳税都交什么税
  • 分红股份会减少吗
  • 出售抵债资产账务处理
  • 出租周转材料的租金会计科目
  • 广告公司奖金激励分配方案
  • 多缴的印花税怎么抵下次税费
  • 固定资产的处理方法
  • 结转存货跌价准备是什么意思
  • 报价中含税和不含税比例
  • 收到固定资产发票怎么入账
  • 进项税销项税分录
  • 对公账户可以取钱出来吗
  • mysql 5.7.11 winx64.zip安装配置方法图文教程
  • 开始菜单字体
  • linux搭建gitlab
  • linux如何更改默认的运行级别
  • centos无法挂载位置
  • win7屏幕颜色变了怎么恢复
  • 64位win7安装kb3038314补丁更新失败临时解决方法
  • jquery文本框内容改变事件
  • jquery函数定义
  • python matplotlab
  • Git 创建分支提交远程分支详解
  • jQuery+ajax读取并解析XML文件的方法
  • python import os
  • lohd
  • android listview数据动态加载
  • 江苏税务个人所得税app怎么下载不了?
  • 税务更名需要什么材料
  • 北京税务局公众平台官网
  • 水库淹没区耕地补偿标准
  • 怎么打印个人所得税扣缴申报表
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设