您现在的位置是:首页 > 编程 > 

【谷粒学院】012

2025-07-27 22:11:58
【谷粒学院】012 一、简介1、模块化产生的背景随着网站逐渐变成"互联网应用程序",嵌入网页的Javascript代码越来越庞大,越来越复杂;Javascript模块化编程,已经成为一个迫切的需求。理想情况下,开发者只需要实现核心的业务逻辑,其他都可以加载别人已经写好的模块;但是,Javascript不是一种模块化编程语言,它不支持"类"(class),包(

【谷粒学院】012

一、简介

1、模块化产生的背景

随着网站逐渐变成"互联网应用程序",嵌入网页的Javascript代码越来越庞大,越来越复杂;

Javascript模块化编程,已经成为一个迫切的需求。理想情况下,开发者只需要实现核心的业务逻辑,其他都可以加载别人已经写好的模块;

但是,Javascript不是一种模块化编程语言,它不支持"类"(class),包(package)等概念,更遑论"模块"(module)了;

2、什么是模块化开发

传统非模块化开发有如下的缺点:

  • 命名冲突;
  • 文件依赖;

模块化规范:

  • CommonJS模块化规范;
  • ES6模块化规范;
二、CommonJS模块规范(ES5写法)

每个文件就是一个模块,有自己的作用域。在一个文件里面定义的变量、函数、类,都是私有的,对其他文件不可见;

1、创建“module”文件夹,并初始化

2、创建es5moudle文件夹

在01.js里面创建方法,在02.js中调用;

01.js:
代码语言:javascript代码运行次数:0运行复制
//创建js方法
// 定义成员:
ct sum = function(a,b){
    return parseInt(a) + parseInt(b)
}
ct subtract = function(a,b){
    return parseInt(a) - parseInt(b)
}
ct multiply = function(a,b){
    return parseInt(a) * parseInt(b)
}
ct divide = function(a,b){
    return parseInt(a) / parseInt(b)
}

//设置哪些成员可以被外界调用
// 导出成员:
 = {
    sum: sum,
    subtract: subtract,
    multiply: multiply,
    divide: divide
}



//简写
 = {
    sum,
    subtract,
    multiply,
    divide
}
02.js:
代码语言:javascript代码运行次数:0运行复制
//调用01里面的方法
//引入模块,注意:当前路径必须写 ./
ct m = require('./01.js')
cole.log(m)
ct result1 = m.sum(1, 2)
ct result2 = m.subtract(1, 2)
cole.log(result1, result2)
三、CommonJS模块规范(ES6写法)

ES6使用 export 和 import 来导出、导入模块;

1、第一种写法

导出模块:
代码语言:javascript代码运行次数:0运行复制
//导出模块
export function getList() {
    cole.log('获取数据列表')
}

export function save() {
    cole.log('保存数据')
}
导入模块:
代码语言:javascript代码运行次数:0运行复制
//导入模块
//只取需要的方法即可,多个方法用逗号分隔
import { getList, save } from "./01.js"
getList()
save()
注意:

此时的程序无法运行的,因为ES6的模块化无法在ode.js中执行,需要用Babel编辑成ES5后再执行;

2、第二种写法

导出模块:
代码语言:javascript代码运行次数:0运行复制
//另一种写法:导出模块
export default {
    getList() {
        cole.log('获取数据列表2')
    },
    save() {
        cole.log('保存数据2')
    }
}
导入模块:
代码语言:javascript代码运行次数:0运行复制
import user from "./0.js"
user.getList()
user.save()
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。 原始发表:2025-01-06,如有侵权请联系 cloudcommunity@tencent 删除模块化数据作用域函数开发

#感谢您对电脑配置推荐网 - 最新i3 i5 i7组装电脑配置单推荐报价格的认可,转载请说明来源于"电脑配置推荐网 - 最新i3 i5 i7组装电脑配置单推荐报价格

本文地址:http://www.dnpztj.cn/biancheng/1197705.html

相关标签:无
上传时间: 2025-07-23 09:40:40
留言与评论(共有 17 条评论)
本站网友 有效消除法令纹
30分钟前 发表
更遑论"模块"(module)了;2
本站网友 激光祛雀斑
8分钟前 发表
subtract
本站网友 地铁停运
26分钟前 发表
b){ return parseInt(a) + parseInt(b) } ct subtract = function(a
本站网友 太仓万达
13分钟前 发表
对其他文件不可见;1
本站网友 来曲唑
7分钟前 发表
越来越复杂;Javascript模块化编程
本站网友 香砂六君丸的功效与作用
6分钟前 发表
本站网友 老虚
5分钟前 发表
越来越复杂;Javascript模块化编程
本站网友 上海来福士
20分钟前 发表
因为ES6的模块化无法在ode.js中执行
本站网友 东莞东华医院
5分钟前 发表
b){ return parseInt(a) - parseInt(b) } ct multiply = function(a
本站网友 旗舰凯旋小区
1分钟前 发表
有自己的作用域
本站网友 广州海珠二手房
6分钟前 发表
subtract
本站网友 野木瓜
30分钟前 发表
已经成为一个迫切的需求
本站网友 彭城视窗房产
27分钟前 发表
divide }02.js:代码语言:javascript代码运行次数:0运行复制//调用01里面的方法 //引入模块
本站网友 心脏听诊音
18分钟前 发表
有自己的作用域
本站网友 董贞微博
9分钟前 发表
b){ return parseInt(a) - parseInt(b) } ct multiply = function(a
本站网友 java学习
30分钟前 发表
第二种写法导出模块:代码语言:javascript代码运行次数:0运行复制//另一种写法:导出模块 export default { getList() { cole.log('获取数据列表2') }