相同点:
均可用于导出常量、函数、文件、模块等
不同点:
1、在一个文件中export可以有多个,但export default 只能有一个;
export var firstName = 'Michael'; export var lastName = 'Jackson'; export var year = 1958;
var firstName = 'Michael'; var lastName = 'Jackson'; var year = 1958; export {firstName, lastName, year};
2、通过export方式导出,在导入时要加{ },export default则不需要
export default function foo() { console.log('foo'); } // 或者写成 function foo() { console.log('foo'); } export default foo;
3、export 导出时,import导入要加 { },export default 导出时,不用加 { }
// 第一组 export default function crc32() { // 输出 // ... } import crc32 from 'crc32'; // 输入 // 第二组 export function crc32() { // 输出 // ... }; import {crc32} from 'crc32'; // 输入
注:应该优先考虑使用 { } 这种写法。因为这样就可以在脚本尾部,一眼看清楚输出了哪些变量