简介:很多概念不清或忘记,重新构建自己的知识体系。每天问自己1~多个问题。我是菜鸟 成为大神之路!

1.认识exportLink export

export语句用于在创建JavaScript模块时,从模块中导出函数对象原始值,以便其他程序可以通过 import 语句使用它们。

export { name1, name2, …, nameN };
export { variable1 as name1, variable2 as name2, …, nameN };
export let name1, name2, …, nameN; // also var
export let name1 = …, name2 = …, …, nameN; // also var, const
export function FunctionName() {...}
export class ClassName {...}export default expression;
export default function (…) { … } // also class, function*
export default function name1(…) { … } // also class, function*
export { name1 as default, … };export * from …;
export { name1, name2, …, nameN } from …;
export { import1 as name1, import2 as name2, …, nameN } from …;
复制代码

2.认识import Link import

import语句用于导入由另一个模块导出的绑定。无论是否声明了 strict mode ,导入的模块都运行在严格模式下。在浏览器中, import语句只能在声明了type="module"script的标签中使用。

import defaultExport from "module-name";
import * as name from "module-name";
import { export } from "module-name";
import { export as alias } from "module-name";
import { export1 , export2 } from "module-name";
import { foo , bar } from "module-name/path/to/specific/un-exported/file";
import { export1 , export2 as alias2 , [...] } from "module-name";
import defaultExport, { export [ , [...] ] } from "module-name";
import defaultExport, * as name from "module-name";
import "module-name";
var promise = import("module-name");
复制代码

多个导入导出

// module "my-module.js"
function cube(x) {return x * x * x;
}
const foo = Math.PI + Math.SQRT2;
export { cube,foo };
复制代码

这样的话,在其它脚本 (比如import),我们可以这样使用:

import { cube, foo } from 'my-module.js';
console.log(cube(3)); // 27
console.log(foo);    // 4.555806215962888
复制代码

3.认识exportexport default

1、exportexport default均可用于导出常量、函数、文件、模块等
2、你可以在其它文件或模块中通过import+(常量 | 函数 | 文件 | 模块)名的方式,将其导入,以便能够对其进行使用
3、在一个文件或模块中,export、import可以有多个,export default仅有一个
4、通过export方式导出,在导入时要加{ }export default则不需要

这样来说其实很多时候exportexport default可以实现同样的目的,只是用法有些区别。注意第四条,通过export方式导出,在导入时要加{ }export default则不需要。使用export default命令,为模块指定默认输出,这样就不需要知道所要加载模块的变量名

转载于:https://juejin.im/post/5c3542a9e51d45524473f11b

填坑-十万个为什么?(22)相关推荐

  1. 填坑-十万个为什么?(24)

    简介:很多概念不清或忘记,重新构建自己的知识体系.每天问自己1~多个问题.我是菜鸟 成为大神之路! 1.Es6 Class通过extends关键字实现继承 Link Class & exten ...

  2. 填坑-十万个为什么?(13)

    简介:很多概念不清或忘记,重新构建自己的知识体系.每天问自己1~多个问题.我是菜鸟 成为大神之路! 1. 经典面试题 for(var i=0;i<=3;i++){ setTimeout(func ...

  3. 填坑-十万个为什么?(18)

    简介:很多概念不清或忘记,重新构建自己的知识体系.每天问自己1~多个问题.我是菜鸟 成为大神之路! 1.学习Promise? Promise 对象用于表示一个异步操作的最终状态(完成或失败),以及其返 ...

  4. java.lang.OutOfMemoryError:GC overhead limit exceeded填坑心得

    该文章出自:http://www.cnblogs.com/hucn/p/3572384.html 分析工具:http://www.blogjava.net/jjshcc/archive/2014/03 ...

  5. 开发工具总结(2)之全面总结Android Studio2.X的填坑指南

    前言:好多 Android 开发者都在说Android Studio太坑了,老是出错,导致开发进度变慢,出错了又不知道怎么办,网上去查各种解决方案五花八门,有些可以解决问题,有些就是转来转去的写的很粗 ...

  6. jetson windows_生命不息,折腾不止:Jetson Nano填坑之软件篇

    题图:摄于武大凌波门 作为一名每天对着各种裸板的系统工程师,对Jetson Nano会踩到各种坑是做好了充分准备的,本着踩坑填坑的精神,在这里记录一下踩坑经历,供大家一乐.如何避开这些坑?想多了,因为 ...

  7. Python美股量化交易填坑记录——13c.Vegas隧道交易机器人(实盘记录)

    1.背景 上一篇帖子介绍了思路调整的过程,我的目标从"消灭止损单"(越来越保守)改为"追大肉"(允许有止损单,盈利超过损失就行). Python美股量化交易填坑 ...

  8. 填坑之PHP的yield和协程在一起的日子里

    首先是,这是我第一次把公众号文章复制粘贴到github来. 其次是,很久很久之前,我挖了一个yield的一个坑,自己挖的坑自己填,不然迟早会把自己埋掉. 最后是,如果想看之前那个坑,请发送" ...

  9. 生命不息,折腾不止:Jetson Nano填坑之软件篇

    [外链图片转存失败(img-xESuaLE9-1568108074549)(http://images.ilego.club/blog/2019/05/Jetson_nano_%E5%A1%AB%E5 ...

最新文章

  1. FPGA中IBERT 核的应用(二)
  2. tensorflow_yolov3 神经网络训练时train_loss和test_loss出现NaN(not a number)的原因和解决方法
  3. i.mx6ul 移植Openwrt
  4. 在Oracle Linux 7上通过官方Repo在线安装SQL Server 2017
  5. 第512章 河系量子计算机,第512章 河系量子计算机
  6. 北方方言的拼音及解释
  7. win2003超过最大连接数
  8. Putty密钥(PrivateKey)导入SecureCRT
  9. eclipse中导入dtd文件实现xml的自动提示功能
  10. 区块链 FISCO BCOS学习文章(1)-平台介绍
  11. python线程池超过最大数量_讨论一下Python线程池大小设置?
  12. 淘淘商城系列——VMware添加已配置好的虚拟机
  13. 服务器mdl文件转换,Simulink Project 中 MDL 到 SLX 模型文件格式的转换
  14. skimage.exposure.rescale_intensity
  15. pr字幕一个一个出现的笨方法
  16. git fork 什么意思
  17. 逆水寒服务器什么时候能维护好,逆水寒11月22日更新维护公告 逆水寒更新到什么时候...
  18. 程控增益放大器电路原理图
  19. ctf练习之闯关游戏
  20. 1.2.2 网络抓包工具之:Fiddler

热门文章

  1. VSCode刚安装后可以安装这些插件提高开发效率
  2. 吐血整理《计算机网络五层协议之物理层(下)》
  3. 个人计算机的安全设置,个人计算机安全设置..doc
  4. java lazy loading_java – Spring,@Transactional和Hibernate Lazy Loading
  5. 2021 校招 | 神策数据,数说未来
  6. 2019 神策春招 | “数”天下神人,都“据”于此
  7. CEO 赠书 | 决策是一个技术活,如何做「对」的事?
  8. 杏树林孙文亮:在线医疗数据驱动实战
  9. 用vue.js写的一个瀑布流的组件
  10. 使用 python 获取 httpd 程序所占用物理内存