js 代码模块化调用

es5 方式 :

01.js:

const sum = function(a,b){
    return a + b;
}

const subtract = function(a,b){
    return a - b;
}

//把对应的方法暴露出去以供调用
module.exports = {
    f_sum: sum,
    //sum //可以默认使用原函数名
    //f_sub: subtract
    subtract //可以默认使用原函数名
};

02.js:

//引入模块
const math = require('./01.js');

console.log(math.f_sum(5,6));

//console.log(math.f_sub(10,3));
console.log(math.subtract(8,3));

在命令窗口使用node运行:

node .\02.js

结果如下:

================================================================================================

es6方式,又分为两种:

第一种:

01.js:

//直接注明方法暴露
export function getMessage(){
    console.log("getMessage....");
    
}
export function getData(){
    console.log("getData...");
    
}

02.js:

//引入对应的暴露方法
import {getMessage,getData} from './01.js';

getMessage();
getData();

 需要注意的是,nodejs不能直接运行es6模块化代码(普通es6代码可以),需要经过babel转码后再使用nodejs运行,结果如下:

第二种:

01.js:

export default({
    getInfo(){
        console.log("info....");
    },
    getCode(){
        console.log("code....");       
    }
});

02.js:

//引入模块并为其设置别名
import data from './01.js';

//调用方法
data.getInfo();
data.getCode();

然后用babel转码,nodejs运行,得到结果:

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章