当前位置: 首页 > article >正文

ES6模块导入与导出的方式

让我为大家介绍一下导入与导出的所以方式吧!
想必有的小伙伴使用了导入与导出,但没有作用,可能是如下原因:

// 没有添加 type="module"
<script type="module"></script>

严格模式use strict;
module模式
export导出
import导入
as不同模块导出接口名称命名重复, 使用 as 重新定义变量名。
1.导出的函数声明与类声明必须要有名称(匿名函数)(export default 命令另外考虑)。
2.不仅能导出声明还能导出引用(例如函数)。
3.export 命令可以出现在模块的任何位置
4.import 命令会提升到整个模块的头部,首先执行。
5.建议使用大括号指定所要输出的一组变量写在文档尾部,明确导出的接口。
6.函数与类都需要有对应的名称,导出文档尾部也避免了无对应名称。
7.export 命令导出的接口名称,须和模块内部的变量有一一对应关系。
8.导入的变量名,须和导出的接口名称相同,即顺序可以不一致。
9.import只读属性:不允许在加载模块的脚本里面, 改写接口的引用指向,即可以改写 import 变量类型为对象的属性值, 不能改写 import 变量类型为基本类型的值。
10.单例模式:多次重复执行同一句 import 语句,那么只会执行一次,而不会执行多次。 import 同一模块,声明不同接口引用,会声明对应变量,但只执行一次 import 。
11.import静态执行特性:import 是静态执行,所以不能使用表达式和变量。

export导出

文件后缀为js

1.export let a = 1

export let a = 1

2.export {userName,age}

let a  = 1
let b  = 2
export {a,b}

3.export {userName as names}

let a  = 1
export {a as b}

4.export default userName

let a  = 1
export default a

import导入

1.import {userName,age} from “xxx.js”

    import {a,b} from "./index.js"

2.import {userName as aaa} from “xxx.js”

    import {a as b} from "./index.js"

3.import abc from "xxx.js

    import a from "./index.js" 

4.import * as abc from "xxx.js

    import * as a from "./index.js" 

感谢大家的阅读,本人文笔有限,如有不对的地方,可以向我提出,感谢大家!


http://www.kler.cn/a/132199.html

相关文章:

  • 接口测试vs功能测试
  • 验证码案例 —— Kaptcha 插件介绍 后端生成验证码,前端展示并进行session验证(带完整前后端源码)
  • syslog-ng 发送metric 到 Prometheus + Grafana
  • 美术作品的著作权
  • SQL Server如何建表
  • upload-labs关卡9(基于win特性data流绕过)通关思路
  • lua中的正则表达式
  • Linux C/C++全栈开发知识图谱(后端/音视频/游戏/嵌入式/高性能网络/存储/基础架构/安全)
  • [C/C++]数据结构 链表(单向链表,双向链表)
  • 从0到0.01入门 Webpack| 001.精选 Webpack面试题
  • web3资讯及远程工作
  • CTFhub-RCE-综合过滤练习
  • pycharm/vscode 配置black和isort
  • m1 rvm install 3.0.0 Error running ‘__rvm_make -j8‘
  • 离线任务的稳定性
  • 程序性能分析
  • 【汇编】Loop指令、段前缀
  • 【GitHub】如果在进行PR时忘记 cloning forked repo,该如何进行修补呢
  • CF1899A Game with Integers(思维题)
  • C++文件操作知识点总结