//tools.js
function randomString() {
var chars = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXTZabcdefghiklmnopqrstuvwxyz";
var string_length = 8;
var randomstring = '';
for (var i=0; i<string_length; i++) {
var rnum = Math.floor(Math.random() * chars.length);
randomstring += chars.substring(rnum,rnum+1);
}
return randomString;
}
exports.randomString = randomString();
//test.js
var tools = require('./tools');
console.log(tools.randomString());
但是当我运行它时,我明白了:
[Function: randomString]
我如何实际让它随机吐出一串?
答案 0 :(得分:4)
exports.randomString = randomString;
或
exports.randomString = function() {....}
答案 1 :(得分:2)
不详细了解node.js。但
exports.randomString = randomString();
已调用该函数并将结果分配给exports.randomString。
要指定参考,你应该拿走大括号。
第二个错误:
return randomString;
需要(观察案例)
return randomstring;
因为这是构建和存储随机字符串的变量。
答案 2 :(得分:2)
您确定接受的答案是否能完全解决您的问题?
如果你这样做
exports.randomString = randomString();
然后你将随机字符串函数调用一次并将结果分配给exports.randomString。
请检查并多次致电
console.log(tools.randomString());
如需更多建议,请阅读上面的其他答案。希望我能提供帮助。
答案 3 :(得分:1)
为您的结果使用其他名称。一个与你的职能名称不同的。
变量randomstring
包含您的累积结果,但您返回的是randomString
,它只是大小写,并且是函数的名称。