【ES6】模块化

server/2025/3/17 11:47:29/

概述

模块功能主要有两个命令,exportimport

一个js文件就是一个模块。

参考视频

【一小时速通JavaScript模块化,涵盖CommonJS与ES6模块化-哔哩哔哩】 https://b23.tv/gZ1uK7V

导出成员

在正常变量、函数前加export关键字。

导入模块

在另一个模块中导入

万能导入
import * as xxx from "xxx.js"

在HTML页面导入

<script type="module" src="">

模块化的优点

防止命名冲突,每个模块都有自己的命名空间

  • 代码复用,每个模块可以被其他多个模块引用
  • 高维护性,修改一个模块其他引用该模块的地方都改变
  • 确保引入顺序的正确性,使用模块化之后一般都是在自己的中引入所依赖的模块,所以避免了依赖顺序的引入问题
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><script src="Point.js"></script>
</head>
<body></body><script src="run.js"></script>
</html>

引入Point.js,再在run.js中创建实例和执行其他代码。

而通过模块化,可以直接在run.js中导入和使用Point.js中定义的类。

import {Point,ColorPoint} from "./Point.js";let cp = new ColorPoint(100,100,"red");console.log(cp);

HTML代码也就可以简化:

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title>
</head>
<body></body><script type="module" src="run.js"></script>
</html>

需要注意的是,模块功能貌似需要服务器,可以使用Live Server插件,以本地静态服务器形式运行网页。


http://www.ppmy.cn/server/175689.html

相关文章

探索数据交互的奥秘:深入剖析缓冲区的工作原理与应用场景

目录 1.理解“一切皆文件” 2.缓冲区 2.1 什么是缓冲区 2.2 为什么要引⼊缓冲区机制 2.3 解释一个遗留问题 2.4 缓冲类型 2.5 FILE 3.简单设计⼀下libc库 1.理解“一切皆文件” ⾸先&#xff0c;在windows中是⽂件的东西&#xff0c;它们在linux中也是文件&#xff1b;其…

Linux系统移植篇(二)Uboot 顶层 Makefile 解析

在之前的文章&#xff0c;我们经过编译&#xff0c;配置工具链&#xff0c;编译好了uboot的内容&#xff0c;呈现的工程结构如下所示&#xff1b; 具体的内容作用也就不做过多的解析了&#xff0c;读者可以根据内容单个去查。 在阅读 uboot 源码之前&#xff0c;肯定是要先看一…

Carto 无尽旅图 for Mac v1.0.7.6 (51528)冒险解谜游戏 支持M、Intel芯片

游戏介绍 《Carto》源于英文"Cartographer"&#xff08;制图师&#xff09;&#xff0c;卡朵不慎坠入未知世界。这里蜿蜒曲折&#xff0c;地形丰富。作为制图师卡朵&#xff0c;你将用你自己的神秘力量&#xff0c;操纵地图颠覆世界&#xff0c;将其翻转、拼合。当世…

JavaScript 中 call 和 apply 的用法与区别

文章目录 前言一、 call 方法1.1 基本用法1.2 传递多个参数 二、apply 方法2.1 基本用法2.2 传递数组参数 三、call 和 apply 的区别四、实际应用场景4.1 借用方法4.2 继承与构造函数 五、总结 前言 在 JavaScript 中&#xff0c;call 和 apply 是两个非常重要的函数方法&…

DeepSeek + Excel:数据处理专家 具体步骤

将DeepSeek与Excel结合使用&#xff0c;可显著提升数据处理效率&#xff0c;实现智能化的数据分析、清洗、计算及可视化。以下是具体操作步骤及核心技巧的综合指南&#xff1a; 一、接入DeepSeek的两种主要方法 1. 插件接入法&#xff08;推荐&#xff09; 步骤1&#xff1a;…

【Linux终端探幽】—基础指令集(中):迷宫寻宝

目录 rmdir与rm&#xff1a;清理迷宫的碎石与陷阱—— 扫除废弃路径的爆破术 man&#xff1a;迷宫探险的古老指南书—— 用咒语解锁指令的隐藏说明 cp&#xff1a;复制迷宫地图的影分身术—— 从一扇门到另一扇门的镜像魔法 mv&#xff1a;移动宝藏的隐形搬运工—— 路径重…

VSCode通过SSH免密远程登录Windows服务器

系列 1.1 VSCode通过SSH远程登录Windows服务器 1.2 VSCode通过SSH免密远程登录Windows服务器 文章目录 系列1 准备工作2 本地电脑配置2.1 生成密钥2.2 VS Code配置密钥 3. 服务端配置3.1 配置SSH服务器sshd_config3.2 复制公钥3.3 配置权限&#xff08;常见问题&#xff09;3.…

[oeasy]python074_ai辅助编程_水果程序_fruits_apple_banana_加法_python之禅

074_ai辅助编程_水果程序_fruits_加法 回忆上次内容 上次直接从模块中导入变量、函数 from my_file import pi 导入my_file.pi 并作为 pi 使用 from my_file import pi as my_pi 导入变量 并 重命名 添加图片注释&#xff0c;不超过 140 字&#xff08;可选&#xff09; …