ES6:export default 和 export 區(qū)別

export default 和 export 區(qū)別:

1.export與export default均可用于導(dǎo)出常量、函數(shù)、文件、模塊等
2.你可以在其它文件或模塊中通過import+(常量 | 函數(shù) | 文件 | 模塊)名的方式,將其導(dǎo)入,以便能夠?qū)ζ溥M(jìn)行使用
3.在一個文件或模塊中,export、import可以有多個,export default僅有一個
4.通過export方式導(dǎo)出,在導(dǎo)入時要加{ },export default則不需要

1.export
//a.js
export const str = "blablabla~";
export function log(sth) { 
  return sth;
}
對應(yīng)的導(dǎo)入方式:

//b.js
import { str, log } from 'a'; //也可以分開寫兩次,導(dǎo)入的時候帶花括號

2.export default
//a.js
const str = "blablabla~";
export default str;
對應(yīng)的導(dǎo)入方式:

//b.js
import str from 'a'; //導(dǎo)入的時候沒有花括號

使用export default命令,為模塊指定默認(rèn)輸出,這樣就不需要知道所要加載模塊的變量名

//a.js
let sex = "boy";
export default sex(sex不能加大括號)
//原本直接export sex外部是無法識別的,加上default就可以了.但是一個文件內(nèi)最多只能有一個export default。
其實此處相當(dāng)于為sex變量值"boy"起了一個系統(tǒng)默認(rèn)的變量名default,自然default只能有一個值,所以一個文件內(nèi)不能有多個export default。
// b.js
本質(zhì)上,a.js文件的export default輸出一個叫做default的變量,然后系統(tǒng)允許你為它取任意名字。所以可以為import的模塊起任何變量名,且不需要用大括號包含
import any from "./a.js"
import any12 from "./a.js" 
console.log(any,any12)   // boy,boy
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容