摘要:一前言用模塊寫代碼,為什么要用模塊來寫代碼之前,在中定義的一切,都是共享一個全局作用域的,隨著應(yīng)用變得復(fù)雜,這樣做會引起如命名沖突和安全問題于是引入了模塊。
一.前言:
用模塊寫代碼,為什么要用模塊來寫代碼:ES6之前,在js中定義的一切,都是共享一個全局作用域的,隨著web應(yīng)用變得復(fù)雜,這樣做會引起如:命名沖突和安全問題、于是引入了模塊。
二.清楚一個概念:export 和 export default 是ES6 里面的API(本文只介紹ES6的)
exports 和 model..exports 是node.js里面的API,更切確的說是Common.js里的(就和require 和 import 相似)
三.export// a.js export let a = 1 //輸出變量 export fn(){...} //輸出函數(shù) export class Class{ constructor(a,b){ this.a = a; this.b = b; } } //輸出類 fn2(){...} //定義一個函數(shù) export fn2; //建議以這種在末尾統(tǒng)一輸出的方式export export {fn2 ,fn}; //導(dǎo)出多個變量,要有{} export {fn2 as asFn2}; //導(dǎo)出時重命名,要有{} // b.js import {fn2} from "a.js"; //export 的引入要加{},單個也要加; import {fn2 , a , Class as Class1} from "a.js" //引入多個要用 ‘,’隔開; import * as example from "a.js"; //引入整個模塊 example.a = 1; //使用模塊,在有很多需要引入時,建議這種方法;四.export defalut(模塊的默認(rèn)值)
// a.js export default function(num1,num2){...} //導(dǎo)出默認(rèn)值,只能導(dǎo)出一個 export let a = 1; //導(dǎo)出變量a // b.js import any from "a.js"; //引入默認(rèn)值,any 可以是任意的名字,不用{} import {a} from "a.js"; //引入a ; import any,{a} from "a.js" //默認(rèn)值必須放在非默認(rèn)值前面 import {default as any , a} from "a.js" //有重命名就要大括號包起來總結(jié):
export :
單個不用括號,多個要用{},as也要用{}; (因為export default 只能export 一個);
import
除了* as ,別的重命名都要用{}
export 要用{}
既有export 和 export default時:import any,{a} from "a.js’ 默認(rèn)寫前面
by:Beast 原創(chuàng):轉(zhuǎn)載請聲明
覺得對你有用,請點贊!歡迎探討指點!
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/94558.html
摘要:一前言用模塊寫代碼,為什么要用模塊來寫代碼之前,在中定義的一切,都是共享一個全局作用域的,隨著應(yīng)用變得復(fù)雜,這樣做會引起如命名沖突和安全問題于是引入了模塊。 一.前言: 用模塊寫代碼,為什么要用模塊來寫代碼:ES6之前,在js中定義的一切,都是共享一個全局作用域的,隨著web應(yīng)用變得復(fù)雜,這樣做會引起如:命名沖突和安全問題、于是引入了模塊。 二.清楚一個概念: export 和 ex...
摘要:在上一篇文章中中和模塊的導(dǎo)入導(dǎo)出對比,偏向于理論層面,還有一些同學(xué)在微信群里或是私下里針對一些問題進(jìn)行了溝通,所以有了這一篇文章,對的導(dǎo)入導(dǎo)出進(jìn)行總結(jié)和實踐當(dāng)直接給時,會失效這個問題其實已經(jīng)和導(dǎo)入導(dǎo)出沒什么關(guān)系了,我們看一個知乎上的問題詳細(xì) 在上一篇文章中JavaScript中AMD和ES6模塊的導(dǎo)入導(dǎo)出對比,偏向于理論層面,還有一些同學(xué)在微信群里或是私下里針對一些問題進(jìn)行了溝通,所以...
更新:最新的源碼和使用說明放到了github上 點擊跳轉(zhuǎn)本文的重點在于restful接口的設(shè)計與實現(xiàn),使用到了express和monogoose.點擊查看express教程點擊查看monogoose教程ES6入門教程----阮一峰的博客 node4.x對ES6的支持并不完善,建議使用更高版本的node在實際開發(fā)中請在文件頭部添加use strict來聲明使用嚴(yán)格模式為了有助于更好的理解后期的代碼,...
摘要:學(xué)習(xí)模塊不是對象,而是通過命令顯式指定輸出的代碼,輸入時也采用靜態(tài)命令的形式。的模塊自動采用嚴(yán)格模式命令用于規(guī)定模塊的對外接口,命令用于輸入其他模塊提供的功能。該文件內(nèi)部的所有變量,外部無法獲取。 es6 學(xué)習(xí)-module_v1.0 ES6模塊不是對象,而是通過export命令顯式指定輸出的代碼,輸入時也采用靜態(tài)命令的形式。 ES6的模塊自動采用嚴(yán)格模式 export命令用于規(guī)定模...
閱讀 3470·2021-09-26 09:46
閱讀 2825·2021-09-13 10:23
閱讀 3555·2021-09-07 10:24
閱讀 2420·2019-08-29 13:20
閱讀 2948·2019-08-28 17:57
閱讀 3098·2019-08-26 13:27
閱讀 1207·2019-08-26 12:09
閱讀 532·2019-08-26 10:27