export default用于导出模块唯一默认值,可为函数、类、对象或基本类型,导入时用import xxx from语法自定义名称且不加花括号;一个模块仅允许一个default导出,但可与多个命名导出共存。

在 JavaScript 的 ESModule 中,export default 用于导出一个模块的默认值,它没有名字限制,每个模块最多只能有一个 export default。导入时可以自由指定接收名称,无需与导出名一致。
导出默认模块(export default)
使用 export default 可以导出函数、对象、类、基本类型等任意值。它不依赖变量名,本质是“导出一个值”。
例如:
// math.js
export default function add(a, b) {
return a + b;
}
也可以导出匿名函数、字面量或类:
export default { version: '1.0', name: 'utils' };
export default class Calculator { ... }
export default 42;
导入时自定义接收名称(import xxx from)
导入默认导出时,用 import xxx from 'module' 语法,其中 xxx 是你任意起的名字,完全不受导出端影响。
在 Java 中初始化和管理阿里云 SDK客户端。包括单例模式、线程安全、endpoint 与 region 配置、VPC 终端节点、同步与异步等。
例如:
// main.js import sum from './math.js'; // ✅ 接收名为 sum import calculate from './math.js'; // ✅ 接收名为 calculate import anything from './math.js'; // ✅ 名字随意,甚至可为 _、a、myFn 等
注意:不能加花括号 {},否则会报错(那是命名导出的写法)。
混用默认导出和命名导出
一个模块可以同时有 export default 和多个命名导出(export const/let/function),但导入方式要区分清楚:
-
import 默认名 from 'mod'→ 获取默认导出 -
import { 命名1, 命名2 } from 'mod'→ 获取命名导出 -
import 默认名, { 命名1 } from 'mod'→ 同时导入默认 + 某些命名导出
例如:
// utils.js
export default function helper() { ... }
export const PI = 3.14;
export function log() { ... }
// app.js
import help, { PI, log } from './utils.js'; // ✅ 默认名 help + 解构命名导出
常见误区提醒
-
export default后面不能跟var/let/const声明语句(如export default const x = 1❌),只能跟表达式或声明(函数、类、对象字面量等) - 导入时若误写成
import { default } from 'mod',会报错——default不是命名导出,不是属性名 - TypeScript 中,
export default导出的类型需配合export default interface/type或通过值推导,不能直接export default type X = ...
Java免费学习笔记:立即使用
解锁 Java 大师之旅:从入门到精通的终极指南










