【发布时间】:2018-09-15 18:26:09
【问题描述】:
我有一个包含这个的 random.js 文件来获取随机假 IP
exports.ip = function () {
let random = (Math.floor(Math.random() * 255) + 1)+"."+(Math.floor(Math.random() * 255) + 0)+"."+(Math.floor(Math.random() * 255) + 0)+"."+(Math.floor(Math.random() * 255) + 0);
return random
}
我调用 send.js 文件中的变量来替换字符串 {randomip}
let replace_tag = function (to) {
config.message.subject = config.message.subject
.replace("{randomip}", random.ip)
.replace("{email}", to)
.replace("{date}", random.date);
config.message.fromname = config.message.fromname
.replace("{randomip}", random.ip)
.replace("{email}", to)
.replace("{date}", random.date);
config.message.fromemail = config.message.fromemail
.replace("{randomip}", random.ip)
.replace("{email}", to)
.replace("{date}", random.date);
}
但是它只会产生一个生成的ip,我想让它在每次调用时随机生成会产生不同的值
我尝试将其插入循环中,但仍然无法正常工作
我在另一个函数中调用替换函数,然后像这样进入循环
let kirim = function (to) {
replace_tag(to);
let message = {
from: config.message.fromname+'<'+config.message.fromemail+'>',
to: to,
subject: config.message.subject,
text: config.message.text,
html: html
};
transporter.sendMail(message, (error, info) => {
if (error) {
return console.log(error.response)
}
console.log('Message sent: ',info.accepted);
});
};
(async () => {
for (var i in list) {
kirim(list[i]);
await delay(config.send.delay*1000);
}
})();
【问题讨论】:
-
您可以改为导出函数
-
你导出了一个值而不是一个生成值的函数
-
我已经将它编辑为一个函数,但它仍然不是每次调用都是随机的
-
你叫它
random.ip()而不是random.ip -
我调用 random.ip 因为我将它作为对象导入
标签: javascript node.js function random call