js模块导出时{default as name}和{name as default}有什么区别?

What are differences between { default as name } and { name as default } when exporting js modules?

我正在查看来自 Swiperjs 的 swiper.esm.js(此处复制的源代码以供参考:https://jsfiddle.net/fw4zj8qk/),第一行是

export { default as Swiper, default } from './core/core.js';

而下面的形式是:

export { default as Virtual } from './modules/virtual/virtual.js';

在 MDN 文档中我也可以找到类似于

export { Something as default }

是可以的。所以我目前可以看到以下语法:

export { Something as default }
export { default as Something }
export { default as Something, default }

这3个有什么区别?

// Import name `Something` from `...`, 
//   re-export as this module's default export
export { Something as default } from '...';

// Import default export from `...`, 
//   re-export as `Something` from this module
export { default as Something } from '...';

// Import default export from `...`, 
//   re-export it as `Something` from this module 
//   and this module's default export
export { default as Something, default } from '...';