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

ES6模块化

上一篇配置webpack(Vue中webpack的使用_vue webpack-CSDN博客)的时候接触到模块化的规范,这篇拓展一下知识面,详细了解一下ES6模块化。

一、历史

在 ES6 模块化规范诞生之前,JavaScript 社区已经尝试并提出了 AMD、CMD、CommonJS 等模块化规范。 但是,这些由社区提出的模块化标准,还是存在一定的差异性与局限性、并不是浏览器与服务器通用的模块化 标准,例如:

  • AMD 和 CMD 适用于浏览器端的 Javascript 模块化

  • CommonJS 适用于服务器端的 Javascript 模块化

  • ES6 模块化规范是浏览器端与服务器端通用的模块化开发规范

二、使用ES6

每个 js 文件都是一个独立的模块 ;

导入其它模块成员使用 import 关键字 ;

向外共享模块成员使用 export 关键字;

1、默认导入导出

//01.默认导出.js
let n1 = 10
let n2 = 20
function show() {}export default {n1,show
}
import m1 from './01.默认导出.js'console.log(m1)//{ n1: 10, show: [Function: show] }

2、按需导出

//03.按需导出.js
export let s1 = 'aaa'
export let s2 = 'ccc'
export function say() {}
import info, { s1, s2 as str2, say } from './03.按需导出.js'console.log(s1)
console.log(str2)
console.log(say)

3、直接导入并执行模块中的代码:

//05.直接运行模块中的代码.js
for (let i = 0; i < 3; i++) {console.log(i)
}===================================
import './05.直接运行模块中的代码.js'

http://www.dtcms.com/a/232264.html

相关文章:

  • PyTorch中matmul函数使用详解和示例代码
  • 在 Oracle 中,创建不同类型索引的 SQL 语法
  • 行列式的性质
  • LuaJIT2.1 和 Lua5.4.8 性能对比
  • calico/node is not ready: BIRD is not ready: BGP not established with xxx
  • electron主进程和渲染进程之间的通信
  • JAVA开发工具——IntelliJ IDEA
  • HikariCP数据库连接池原理解析
  • 数字证书_CA_详解
  • 007-nlohmann/json 项目应用-C++开源库108杰
  • 使用Node.js分片上传大文件到阿里云OSS
  • Spring Boot+Neo4j知识图谱实战:3步搭建智能关系网络!
  • 「数据分析 - Pandas 函数」【数据分析全栈攻略:爬虫+处理+可视化+报告】
  • 2025年渗透测试面试题总结-腾讯[实习]玄武实验室-安全工程师(题目+回答)
  • Redis 缓存策略:借助缓存优化数据库性能并保障数据一致性
  • 【Redis】zset 类型
  • EasyRTC音视频实时通话助力新一代WebP2P视频物联网应用解决方案
  • 129、QT搭建FFmpeg环境
  • 「深度拆解」Spring Boot如何用DeepSeek重构MCP通信层?从线程模型到分布式推理的架构进化
  • 稳定币的深度剖析与展望
  • 将HTML内容转换为Canvas图像,主流方法有效防止文本复制
  • 比特币:固若金汤的数字堡垒与它的四道防线
  • 白银6月想法
  • 【Redis从入门到精通实战文章汇总】
  • 蓝桥杯2118 排列字母
  • Modern C++(三)表达式
  • 《C++ 模板》
  • 精度分析方法-不确定度
  • Python异步爬虫与代理完美结合
  • MySQL——视图 用户管理 语言访问