在前端开发中,使用模块化是十分常见的,而在 ES6 中,可以使用 export
关键字将模块中的内容导出,供其他模块使用。在 ES6 中,以 export default
和 export
两种方式进行导出。本文将详细介绍 ES6 中默认导出和命名导出的区别及应用。
默认导出
默认导出(export default
)在一个模块中只能使用一次,用于导出该模块的主要功能。默认导出的语法如下所示:
// moduleA.js export default function() { // 默认导出的主要功能 }
默认导出通常用于导出一个函数、对象或类。当其他模块引入该模块时,可以不需要知道导出的具体名称,直接使用默认导出的值。实例如下:
// moduleB.js import moduleA from './moduleA.js'; moduleA(); // 调用模块导出的默认函数
命名导出
命名导出(export
)可以多次使用,用于导出模块中的多个功能。命名导出的语法如下所示:
-- -------------------- ---- ------- -- ---------- ------ -------- ------ - -- --------- - ------ ----- --- - - -- --------- -- ------ ----- ------- - -- ------ -
命名导出允许导出多个函数、变量、对象或类等。当其他模块引入该模块时,需要使用大括号 {}
指定导入的名称,实例如下:
// moduleD.js import { func, obj, MyClass } from './moduleC.js'; func(); // 调用命名导出的函数 console.log(obj); // 输出命名导出的对象 const myClass = new MyClass(); // 使用命名导出的类
默认导出和命名导出的应用
默认导出和命名导出在实际开发中有不同的应用场景。当需要导出一个模块的主要功能时,使用默认导出;如果需要导出多个功能,则使用命名导出。
在实际开发中,也可以在一个模块中同时使用默认导出和命名导出,实例如下:
// utilities.js export default function add(a, b) { return a + b; } export function subtract(a, b) { return a - b; }
在其他模块中引入该模块时,可以直接使用默认导出的 add
函数,同时也可以使用大括号 import { subtract } from './utilities.js'
引入命名导出的 subtract
函数。
总结
在 ES6 中,模块化的导出方式包括默认导出和命名导出两种方式。默认导出在一个模块中只能使用一次,用于导出该模块的主要功能;而命名导出可以多次使用,用于导出模块中的多个功能。在实际开发中,需要根据实际需要选择不同的导出方式。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/6493efa248841e9894180e37