JavaScript中import导入第三方工具包的关键是确认其ESM支持及导出类型:lodash-es、date-fns等提供命名导出,用import {fn} from 'pkg';axios、zod等支持默认导出,可用import pkg from 'pkg'或解构具名导出;Node.js需.mjs扩展名或package.json设"type":"module",浏览器需script标签加type="module"。

在 JavaScript 中用 import 导入第三方工具包的函数,关键在于确认该包是否支持 ES 模块(ESM),以及是否提供了命名导出(named export)或默认导出(default export)。
确认包是否支持 ES 模块
现代主流工具包(如 lodash-es、date-fns、zod)通常提供 ESM 版本。安装后,优先查文档看是否推荐用 import 方式引入。例如:
-
lodash-es是lodash的 ESM 版本,可直接按需导入函数; -
date-fns所有函数都是命名导出,不依赖默认导出; -
axios同时支持默认导出(import axios from 'axios')和具名导出(如import { isAxiosError } from 'axios')。
按需导入命名导出的函数
如果工具包以命名方式导出函数(最常见于函数式工具库),用大括号语法导入:
import { format, parseISO } from 'date-fns';
import { debounce, throttle } from 'lodash-es';
console.log(format(parseISO('2023-10-01'), 'yyyy-MM-dd')); // "2023-10-01"
const debouncedFn = debounce(() => console.log('触发了'), 300);
导入默认导出的对象或类
有些包(如 axios、swr、zod)主要提供默认导出,直接用默认导入即可:
在 Java 中初始化和管理阿里云 SDK客户端。包括单例模式、线程安全、endpoint 与 region 配置、VPC 终端节点、同步与异步等。
立即学习“Java免费学习笔记(深入)”;
import axios from 'axios';
import useSWR from 'swr';
import { z } from 'zod';
const response = await axios.get('/api/user');
const schema = z.object({ name: z.string(), age: z.number() });
注意 Node.js 环境下的配置要求
在 Node.js 项目中使用 import,需满足以下任一条件:
- 文件扩展名为
.mjs; - 或
package.json中设置了"type": "module"; - 若仍用
.js扩展名又未设type,则无法直接用import(会报错Cannot use import statement outside a module)。
浏览器环境只要脚本标签加 type="module" 即可:
<script type="module" src="./main.js"></script>

















