0

:)

いつものように、皆さんが答えるのにやや簡単な答えがあります。関数などは初めてです。関数を別の node.js アプリケーションにエクスポートする方法に関するチュートリアルをいくつか見ました。

外部モジュール用の乱数を生成しようとしています。

これは私がセットアップしたものです。

(index.js ファイル)


 function randNumb(topnumber) {
 var randnumber=Math.floor(Math.random()*topnumber)
 }

 module.exports.randNumb();

(run.js)


  var index = require("./run.js");


  console.log(randnumber);

さて、私の問題は、index.js ファイルを実行すると、コンソールからこのエラーが表示されることです。

TypeError: Object #<Object> has no method 'randNumb'
    at Object.<anonymous> (C:\Users\Christopher Allen\Desktop\Node Dev Essential
     s - Random Number\index.js:8:16)
    at Module._compile (module.js:449:26)
    at Object.Module._extensions..js (module.js:467:10)
    at Module.load (module.js:356:32)
    at Function.Module._load (module.js:312:12)
    at Module.runMain (module.js:492:10)
    at process.startup.processNextTick.process._tickCallback (node.js:244:9)

最初に run.js を実行しました。これが得られたものです。

    ReferenceError: randNumb is not defined
    at Object.<anonymous> (C:\Users\Christopher Allen\Desktop\Node Dev Essential
    s - Random Number\run.js:3:1)
    at Module._compile (module.js:449:26)
    at Object.Module._extensions..js (module.js:467:10)
    at Module.load (module.js:356:32)
    at Function.Module._load (module.js:312:12)
    at Module.runMain (module.js:492:10)
    at process.startup.processNextTick.process._tickCallback (node.js:244:9)
4

2 に答える 2

2

randNum 関数では、次のことを忘れないでください。

return randnumber;

また、index.js で、次のように関数をエクスポートします。

exports.randNumb = randNumb;

run.js で次のように呼び出します。

console.log(randNumber(10));
于 2013-01-24T04:09:32.490 に答える
0

変数をまったくエクスポートしませんでした。

index.js は次のようになります。

function randNumb(topnumber) {
   return Math.floor(Math.random()*topnumber)
}
module.exports.randnumber = randNumb(10); //replace 10 with any other number...

run.js は次のようにする必要があります。

var index = require("./run.js");
console.log(index.randnumber);
于 2013-01-23T04:59:09.923 に答える