JavaScript import/export

Posted Tong__Ming

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JavaScript import/export相关的知识,希望对你有一定的参考价值。

定义模块

ES6之后,使用模块语法(import/export)时,每个文件都会成为它自己的模块,带有一个私有全名空间。顶层的函数和变量不会污染全局全名空间。要为其他模块暴露函数,类,和变量以便import的话,可以用export关键字。

// not exported
function somethingPrivate() {
    console.log(‘TOP SECRET‘)
}


export const PI = 3.14;

export function doSomething() {
    console.log(‘Hello from a module!‘)
}

function doSomethingElse(){ 
    console.log("Something else")
}

export {doSomethingElse}

export class MyClass {
    test() {}
}

import整个模块

import * as test from ‘./test‘

test.doSomething()

./test表示test.js的路径。

import命名成员

import {doSomething, MyClass, PI} from ‘./test‘

doSomething()

const mine = new MyClass()
mine.test()

console.log(PI)

语法


import defaultMember from ‘module‘;


import { memberA, memberB, ... } from ‘module‘;


import * as module from ‘module‘;


import { memberA as a, memberB, ... } from ‘module‘;


import defaultMember, * as module from ‘module‘;


import defaultMember, { moduleA, ... } from ‘module‘;


import ‘module‘;

以上是关于JavaScript import/export的主要内容,如果未能解决你的问题,请参考以下文章

RequireJS-CommonJS-AMD-ES6 Import/Export详解

Amd,Cmd, Commonjs, ES6 import/export的异同点

import与require的区别

export,import ,export default 彻底弄痛

关于VUE中 import export 和 export default 的注意问题

浅谈 import / export