2015-07-22 64 views
0

如何使用另一個js文件的功能。node.js使用另一個js文件的功能

示例:

master.js文件包含以下代碼。

if(typeof(CONVERTER) == "undefined") var CONVERTER = {}; 
    (function(_e) { 
     "use strict"; 
     var synmonth = 29.530588853;  //synodic month (new Moon to new Moon) 
     var ptsa = new Array(485, 203, 199, 14, 12, 12, 12, 9, 8) 
     var ptsb = new Array(324.96, 337.23,320.81, 227.73, 15.45) 
     var ptsc = new Array(1934.136, 4777.259, 1222.114, 16859.074) 

    function GetAdjusted(yea,mx,dx){ 
    ....... 
    return(result); 
    } 

     _e.GetAdjusted = function(yea,mx,dx) { 
     return GetAdjusted(yea,mx,dx); 
     }; 
    }(CONVERTER)); 

如何使用/如何使用Node.js

+2

使用'require'模塊。 https://nodejs.org/api/modules.html –

+0

我得到一個錯誤TypeError:對象#沒有方法'GetAdjusted'。但是,如果我在Web基礎上部署代碼以上工作正常。 – perlbie

+0

您可能無法正確創建模塊。你有沒有在鏈接中的例子? –

回答

1

您的代碼在另一個js文件聲明函數可能是從前端模塊提取。 假設您要使用具有CONVERTER作爲依賴項的getAdjusted函數。您可以按以下寫:

"use strict"; 

module.exports = function(CONVERTER){ 
    if(typeof(CONVERTER) == "undefined"){ 
    CONVERTER = {}; 
    } 
    var synmonth = 29.530588853;  //synodic month (new Moon to new Moon) 
    var ptsa = new Array(485, 203, 199, 14, 12, 12, 12, 9, 8); 
    var ptsb = new Array(324.96, 337.23,320.81, 227.73, 15.45); 
    var ptsc = new Array(1934.136, 4777.259, 1222.114, 16859.074); 

    var getAdjusted = function getAdjusted(yea,mx,dx){ 
    // your code here 
    return(result); 
    }; 

    return getAdjusted; 
}; 

爲了從另一個文件

//Assuming your CONVERTER object exists and pass it into require 
var getAdjusted = require("/path/to/your/file")(CONVERTER); 

// use it. Assuming yea, mx, dx exists. 
getAdjusted(yea,mx,dx); 
相關問題