【JavaScript】模块化开发

模块化开发是指将复杂的代码拆分为独立的模块,每个模块负责完成特定的功能,不同的模块之间可以通过使用export关键字将代码导出为模块,其他模块可以使用import关键字导入该模块。

import export

javascript 复制代码
//index.js
let title = "小明"
let web = "baidu.com"

/*
let getWeb = () => {
    return "www.baidu.com"
}
*/
let getWeb = () => "www.baidu.com"

export { title, web, getWeb } //将多个变量或函数分别导出
javascript 复制代码
<script type="module">
    //从 index.js 文件中导入 title、web、getWeb 变量/函数
    import { title as webTitle, web, getWeb } from './index.js'

    console.log(webTitle)
    console.log(web)
    console.log(getWeb())
</script>

default

javascript 复制代码
let title = "小明"
let web = "baidu.com"

let getWeb = () => "www.baidu.com"

//将一个对象作为整体导出, 导出的对象包含 title、web、getWeb 三个属性
export default { title, web, getWeb }
javascript 复制代码
<script type="module">
    import obj from "./index.js"

    console.log(obj.title)
    console.log(obj.web)
    console.log(obj.getWeb())
</script>

as

javascript 复制代码
//index.js
let title = "小明"
let web = "baidu.com"
let getWeb = () => "www.baidu.com"
export { title, web, getWeb } //将多个变量或函数分别导出
javascript 复制代码
// import * as obj防止命名冲突
<script type="module">
    import * as obj from "./index.js"

    console.log(obj.title)
    console.log(obj.web)
    console.log(obj.getWeb())
</script>
相关推荐
用户69371750013841 分钟前
你每天用的 AI,可能真的被“投毒”了
前端·后端·ai编程
吴声子夜歌3 分钟前
Vue3——Vuex状态管理
前端·vue.js·vue·es6
qq_12084093714 分钟前
Three.js 工程向:Frustum Culling 与场景分块优化实战
前端·javascript
漫游的渔夫9 分钟前
从 Fetch 到 RAG:为什么你的 AI 知识库总是“胡言乱语”?
前端·人工智能
Amos_Web11 分钟前
谷歌浏览器插件Brower-Books: 把整个浏览器变成你的云端书架
前端·chrome·产品
豹哥学前端15 分钟前
前端快速上手保姆级教程day5: 响应式布局
前端·响应式设计
ZC跨境爬虫18 分钟前
3D地球卫星轨道可视化平台开发 Day14(彻底移除多余阴影)
前端·javascript·3d·信息可视化·json
霪霖笙箫20 分钟前
「JS全栈AI学习」十一、Multi-Agent 系统设计:可观测性与生产实践
前端·面试·全栈
不会敲代码121 分钟前
从零开始读懂 MCP:大模型如何通过标准化协议“调用”你的工具?
javascript·cursor·trae