前端模块化导入与导出方法总结

本文介绍了JavaScript的模块化概念,包括模块化的益处,如防止命名冲突和代码复用。重点讲述了在Node.js环境中,CommonJS和ES6Module的使用方法,包括导出和导入的语法,并提供了示例代码。同时,文章也提及模块化的不同方案,如AMD和UMD。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

最近在学习 node.js 的时候又使用到了模块的导入与导出,之前这方面一直没有做详细的笔记,所以这次记录一下,方便以后查阅。

一、了解什么是模块化

模块化是指将一个大的程序文件,拆分成许多小的文件,然后将小文件组合起来。
举个简单的例子,我们要写一个实现 A 功能的 JS 代码,这个功能在项目其他位置也需要用到,那么我们就可以把这个功能看成一个模块采用一定的方式进行模块化编写,既能实现复用还可以分而治之。具体说来,JS 模块化方案很多,有 AMD/CommonJS/UMD/ES6 Module 等,本文主要介绍 CommonJS ES6 Module 的用法。

二、模块化的好处

1、防止命名冲突

2、代码复用

3、高维护性

三、具体的用法(CommonJS 和 ES Module 的使用方式)

(一)CommonJS 用法 

1、导出
// module.js 

let name = '刘德华'

function sing(){
    console.log("忘情水")
}

function eat(){
    console.log("鸡蛋")
}

// 导出:两种导出方式,根据情况选择一种就可以了

module.exports = {
    name,
    sing
}

module.exports.food = eat
2、导入
// index.js
// 导入:直接使用 require 进行导入

const obj = require('./module.js')

(二)ES Module 用法

1、导出
  • 分别暴露
// index1.js
// 分别暴露
export let name = '张三'

export function eat() {
    console.log("今天晚上想吃火锅")
}
  • 统一暴露
// index2.js
// 统一暴露
let name = '张三'

function eat() {
    console.log("今天晚上想吃火锅")
}

export {name, eat}
  • 默认暴露
// index3.js
// 默认暴露
export default {
    change: function(){
        console.log("想要减肥就做出改变,晚上不许吃火锅了")
    }
}
2、导入
// 1、通用的导入方式
import * as obj1 from "./js/index1.js"

import * as obj2 from "./js/index2.js"

import * as obj3 from "./js/index3.js"

// 2、解构赋值的形式
import {name,eat} from "./js/index1.js"

 

以上就是前端模块化导入与导出方法总结,部分内容来自网上一些优秀视频和文章的讲解,再加上自己的总结和理解。如果有不正确的地方希望大家可以帮忙指正,如果这篇文章对你有用,请留下你们一个免费的赞。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

M_emory_

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值