Javascript(es2016) import和require用法和區(qū)別詳解
本文介紹了Javascript(es2016) import和require用法和區(qū)別詳解,分享給大家,具體如下:
寫個(gè)簡單js文件,假設(shè)名字為:lib.js 。 假設(shè)內(nèi)容如下:
export const sqrt = Math.sqrt; export function square(x) { return x * x; } export function diag(x, y) { return sqrt(square(x) + square(y)); }
這樣就可以在其他地方對lib中定義的屬性和方法進(jìn)行引用,引用方法有兩種,也就時(shí)import和require。
//方法一 import { square, diag } from 'lib'; console.log(square(11)); // 121 console.log(diag(4, 3)); //方法兒 import * as lib from 'lib'; square = lib.square;
還可以設(shè)置默認(rèn)的導(dǎo)出信息,就需要崽lib.js中定義 export default {}。default后面可以接一個(gè)參數(shù),也可以接一個(gè)數(shù)組。書寫方法為:
//------ module1.js ------ export default 123; //------ module2.js ------ const D = 123; export { D as default };
通常比較習(xí)慣用第一種。然后用import就可以得到這個(gè)數(shù)組或則參數(shù)。但是import只能用于靜態(tài)導(dǎo)入,就是必須在文件開始的時(shí)候,在最上層就寫好。而require就可以實(shí)現(xiàn)動(dòng)態(tài)加載。
加載方式 | 規(guī)范 | 命令 | 特點(diǎn) |
---|---|---|---|
運(yùn)行時(shí)加載 | CommonJS/AMD | require | 社區(qū)方案,提供了服務(wù)器/瀏覽器的模塊加載方案。非語言層面的標(biāo)準(zhǔn)。只能在運(yùn)行時(shí)確定模塊的依賴關(guān)系及輸入/輸出的變量,無法進(jìn)行靜態(tài)優(yōu)化。 |
編譯時(shí)加載 | ESMAScript6+ | import | 語言規(guī)格層面支持模塊功能。支持編譯時(shí)靜態(tài)分析,便于JS引入宏和類型檢驗(yàn)。動(dòng)態(tài)綁定。 |
const incrementCounter = function ({dispatch,state}){ dispatch(‘INCREMENT‘) } export default { incrementCounter } //require let myAction = require(‘xxxxx‘); myAction.default.incrementCounter()
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
百度Popup.js彈出框進(jìn)化版 拖拽小框架發(fā)布 兼容IE6/7/8,Firefox,Chrome
百度空間的彈出窗口和拖拽效果(也就是popup.js),代碼精簡,效果也很好,我們可以在很多大型網(wǎng)站上見到這種效果,在我的項(xiàng)目中也使用了該js。2010-04-04ionic js 復(fù)選框 與普通的 HTML 復(fù)選框到底有沒區(qū)別
本文通過實(shí)例給大家演示ionic js 復(fù)選框 與普通的 HTML 復(fù)選框到底有沒區(qū)別的相關(guān)知識,非常不錯(cuò)具有參考借鑒價(jià)值,感興趣的朋友一起學(xué)習(xí)吧2016-06-06原生js實(shí)現(xiàn)秒表計(jì)時(shí)器功能
這篇文章主要為大家詳細(xì)介紹了原生js實(shí)現(xiàn)秒表計(jì)時(shí)器功能,可以開始、暫停、清除,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-02-02document.createElement()用法及注意事項(xiàng)(ff下不兼容)
今天處理了一個(gè)日期選擇器的ie和ff的兼容問題,本來這種情況就很難找錯(cuò)誤,找了好久才把錯(cuò)誤定位到j(luò)s中創(chuàng)建元素的方法document.createElement(),這個(gè)方法在ie下支持這樣創(chuàng)建元素2013-03-03小程序getLocation需要在app.json中聲明permission字段
這篇文章主要介紹了小程序getLocation需要在app.json中聲明permission字段,個(gè)別需要獲取用戶地理位置的在開發(fā)者工具調(diào)試時(shí)會出現(xiàn)getLocation需要在app.json中聲明permission字段 ,下面我們就一起來解決一下2019-04-04