最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Javascript模塊導入導出詳解

 更新時間:2022年12月25日 10:00:01   作者:HelloWorld開發(fā)者社區(qū)  
這篇文章主要介紹了Javascript模塊導入導出詳解的相關資料,需要的朋友可以參考下

筆者開始學習Javascript的時候,對模塊不太懂,不知道怎么導入模塊,導出模塊,就胡亂一通試

比如 import xx from 'test.js' 不起作用,就加個括號 import {xx} from 'test.js'

反正總是靠蒙,總有一種寫法是對的,其實還是沒有理解,還是不懂

尤其是在當初寫 www.helloworld.net 網站的時候,一遇到這種問題,就懵逼了,尤其是引入第三方庫的時候

這種情況下更多,此篇文章也是為了怕以后忘記,自查用的,也希望能幫助更多的朋友,此篇文章只是針對ES6的模塊相關知識

首先要知道export,import 是什么

我們知道,JS 模塊導入導出,使用 import , export 這兩個關鍵字

  • export 用于對外輸出本模塊
  • import 用于導入模塊

也就是說使用 export 導出一個模塊之后,其它文件就可以使用 import 導入相應的模塊了

下面我們具體看看, import 和 export 到底怎么用?怎么導出模塊(比如變量,函數,類,對象等)

1 導出單個變量

//a.js 導出一個變量,語法如下
export var site = "www.helloworld.net"

//b.js 中使用import 導入上面的變量
import { site } from "/.a.js" //路徑根據你的實際情況填寫
console.log(site)	//輸出: www.helloworld.net

2 導出多個變量

上面的例子是導出單個變量,那么如何導出多個變量呢

 //a.js 中定義兩個變量,并導出
 var siteUrl="www.helloworld.net"
 var siteName="helloworld開發(fā)者社區(qū)"
 
 //將上面的變量導出
 export { siteUrl ,siteName }  
 
 
 
 // b.js 中使用這兩個變量
 import { siteUrl , siteName } from "/.a.js" //路徑根據你的實際情況填寫

 console.log(siteUrl)	//輸出: www.helloworld.net
 console.log(siteName)	//輸出: helloworld開發(fā)者社區(qū)

3 導出函數

導出函數和導出變量一樣,需要添加{ }

//a.js 中定義并導出一個函數
function sum(a, b) {
    return a + b
}
//將函數sum導出
export { sum } 


//b.js 中導入函數并使用
import { sum } from "/.a.js" //路徑根據你的實際情況填寫
console.log( sum(4,6) ) //輸出: 10

4 導出對象

js中一切皆對象,所以對象一定是可以導出的,并且有兩種寫法

4.1 第一種寫法

使用 export default關鍵字導出,如下

//a.js 中,定義對象并導出, 注意,使用export default 這兩個關鍵字導出一個對象
export default {
    siteUrl:'www.helloworld.net',
    siteName:'helloworld開發(fā)者社區(qū)'
}


//b.js 中導入并使用
import obj from './a.js'   	//路徑根據你的實際情況填寫
console.log(obj.siteUrl)	//輸出:www.helloworld.net
console.log(obj.siteName)	//輸出:helloworld開發(fā)者社區(qū)

4.2 第二種寫法

同樣是使用export default關鍵字,如下

//a.js 中定義對象,并在最后導出
var obj = {
   	siteUrl:'www.helloworld.net',
    siteName:'helloworld開發(fā)者社區(qū)'
}

export default obj	//導出對象obj


//b.js 中導入并使用
import obj from './a.js'   	//路徑根據你的實際情況填寫
console.log(obj.siteUrl)	//輸出:www.helloworld.net
console.log(obj.siteName)	//輸出:helloworld開發(fā)者社區(qū)

5 導出類

導出類與上面的導出對象類似,同樣是用 export default 關鍵字,同樣有兩種寫法

5.1 第一種寫法

//a.js 中定義一個類并直接導出
export default class Person {
    //類的屬性
    site = "www.helloworld.net"

    //類的方法
    show(){
        console.log(this.site)
    }
}


//b.js 中導入并使用
//導入類
import Person from './a.js'

//創(chuàng)建類的一個對象person
let person = new Person()

//調用類的方法
person.show()  	//輸出:www.helloworld.net

5.2 第二種寫法

//a.js 中定義一個類,最后導出
class Person {
    //類的屬性
    site = "www.helloworld.net"

    //類的方法
    show(){
        console.log(this.site)
    }
}

//導出這個類
export default Person 



//b.js 中導入并使用
//導入類
import Person from './a.js'

//創(chuàng)建類的一個對象person
let person = new Person()

//調用類的方法
person.show()  	//輸出:www.helloworld.net

小結

下面我們簡單總結一下

exportexport default的區(qū)別

  • export與export default均可用于導出常量、函數、文件、模塊等
  • 可以在其它文件或模塊中通過import+(常量 | 函數 | 文件 | 模塊)名的方式,將其導入,以便能夠對其進行使用
  • export default后面不能跟const或let的關鍵詞
  • export、import可以有多個,export default僅有一個。
  • 通過export方式導出,在導入時要加 { },export default則不需要
  • export具名導出xxx ,export default匿名。區(qū)別在于導入的時候,export需要一樣的名稱才能匹配,后者無論取什么名都可以。
  • 模塊化管理中一個文件就是一個模塊,export可以導出多個方法和變量,export default只能導出當前模塊,一個js文件中只支持出現一個

對于import ,export , export default ,他們的用法上面的例子已經很詳細的列出了,忘記的時候,可以當作參考看看

最重要的還是要明白為什么要這么寫,實在不明白記住就行了。

到此這篇關于Javascript模塊導入導出詳解的文章就介紹到這了,更多相關Javascript模塊導入導出內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • 省市聯動效果的簡單實現代碼(推薦)

    省市聯動效果的簡單實現代碼(推薦)

    下面小編就為大家?guī)硪黄∈新搫有Ч暮唵螌崿F代碼(推薦)。小編覺得挺不錯的,現在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2016-06-06
  • js canvas實現畫圖、濾鏡效果

    js canvas實現畫圖、濾鏡效果

    這篇文章主要為大家詳細介紹了js canvas實現畫圖、濾鏡效果,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-11-11
  • Bootstrap下拉菜單Dropdowns的實現代碼

    Bootstrap下拉菜單Dropdowns的實現代碼

    這篇文章主要為大家詳細介紹了Bootstrap下拉菜單Dropdowns的實現代碼,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-03-03
  • JS實現簡單控制視頻播放倍速的實例代碼

    JS實現簡單控制視頻播放倍速的實例代碼

    這篇文章主要介紹了通過JS來實現簡單控制視頻播放倍速,本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-04-04
  • Javascript實現關閉廣告效果

    Javascript實現關閉廣告效果

    這篇文章主要為大家詳細介紹了Javascript實現關閉廣告效果,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-01-01
  • JavaScript嚴格模式禁用With語句的原因

    JavaScript嚴格模式禁用With語句的原因

    看了很多遍JavaScript嚴格模式,其中有說“禁用With語句”今天禁不住想知道為何“嚴格模式”就容不下with語句呢,如果你也表示疑惑可以看看哦
    2014-10-10
  • js實現感應鼠標圖片透明度變化的方法

    js實現感應鼠標圖片透明度變化的方法

    這篇文章主要介紹了js實現感應鼠標圖片透明度變化的方法,涉及javascript鼠標操作及css修改技巧,具有一定參考借鑒價值,需要的朋友可以參考下
    2015-02-02
  • js獲取iframe中的window對象的實現方法

    js獲取iframe中的window對象的實現方法

    下面小編就為大家?guī)硪黄狫S獲得iframe中的window對象的實現方法。小編覺得挺不錯的,現在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2016-05-05
  • bootstrap模態(tài)框實現拖拽效果

    bootstrap模態(tài)框實現拖拽效果

    這篇文章主要為大家詳細介紹了bootstrap模態(tài)框實現拖拽效果,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2016-12-12
  • JavaScript實現選擇框按比例拖拉縮放的方法

    JavaScript實現選擇框按比例拖拉縮放的方法

    這篇文章主要介紹了JavaScript實現選擇框按比例拖拉縮放的方法,具有等比例縮放及設置最小范圍等功能,涉及javascript事件的添加、監(jiān)聽、頁面元素動態(tài)操作及鼠標事件的響應等技巧,具有一定參考借鑒價值,需要的朋友可以參考下
    2015-08-08

最新評論

都匀市| 略阳县| 高安市| 图们市| 尤溪县| 海南省| 湘西| 桐庐县| 泰安市| 南通市| 潜江市| 普安县| 文成县| 葫芦岛市| 准格尔旗| 平定县| 吴堡县| 开江县| 张家港市| 霍林郭勒市| 茌平县| 黑河市| 云林县| 咸阳市| 平邑县| 台州市| 赤峰市| 德庆县| 通化市| 凤冈县| 乌拉特后旗| 阿拉善盟| 芒康县| 永顺县| 石河子市| 临武县| 大埔区| 蒙阴县| 渝北区| 平顺县| 镇江市|