// math.jsexportconstadd=(a, b)=> a + b
exportconstsubtract=(a, b)=> a - b
// main.jsimport{ add, subtract }from'./math.js'
console.log(add(1,2))// 3
console.log(subtract(5,3))// 2
2.2 export default 使用
// math.jsconstadd=(a, b)=> a + b
exportdefault add
// main.jsimport add from'./math.js'
console.log(add(1,2))// 3
2.3 混合使用
// math.jsexportconstadd=(a, b)=> a + b
exportdefaultfunctionsubtract(a, b){return a - b
}// main.jsimport subtract,{ add }from'./math.js'
console.log(add(1,2))// 3
console.log(subtract(5,3))// 2
3. CommonJS
3.1 module.exports 使用
// math.jsconstadd=(a, b)=> a + b
module.exports = add
// main.jsconst add =require('./math.js')
console.log(add(1,2))// 3
3.2 exports 使用
// math.js
exports.add=(a, b)=> a + b
exports.subtract=(a, b)=> a - b
// main.jsconst math =require('./math.js')
console.log(math.add(1,2))// 3
console.log(math.subtract(5,3))// 2
4. 对比分析
4.1 语法对比
特性
ES Modules
CommonJS
导出单个值
export default
module.exports
导出多个值
export
exports
导入方式
import
require
4.2 使用场景
场景
ES Modules
CommonJS
现代前端开发
推荐
不推荐
Node.js 环境
支持
推荐
浏览器环境
支持
不支持
5. 互操作性
5.1 ES Modules 中使用 CommonJS
// math.js (CommonJS)
module.exports ={add:(a, b)=> a + b
}// main.js (ES Modules)import math from'./math.js'
console.log(math.add(1,2))// 3
5.2 CommonJS 中使用 ES Modules
// math.js (ES Modules)exportconstadd=(a, b)=> a + b
// main.js (CommonJS)const math =require('./math.js')
console.log(math.add(1,2))// 3
记录一下工作中进行多机多卡部署qwen2.5-vl多模态大模型踩过的坑 第一个天坑就是官方提供的镜像qwenllm/qwenvl:2.5-cu121有问题,在titan显卡会抛出cuda error:no kernel image is availabe for execution on the device. 这是cuda内核与GPU不兼容的问题,…