【问题标题】:How to send a random value in Node.js or express.js如何在 Node.js 或 express.js 中发送随机值
【发布时间】:2021-05-03 18:00:08
【问题描述】:

我有这个 express.js 代码。如下图:

const months = ["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"];
const randomMonth = months[Math.floor(Math.random() * months.length)];

app.get('/v1/month', (req, res) => {
    res.json({ month: randomMonth })
});

但发生的情况是我总是得到相同的回复,即{"month":"July"}

如何让它发送随机响应?

【问题讨论】:

    标签: javascript node.js json express random


    【解决方案1】:

    因为月份是预先计算好的。

    您需要做的是,在路由函数中调用相同的代码。

    
    const months = ["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"];
    
    
    app.get('/v1/month', (req, res) => {
        const randomMonth = months[Math.floor(Math.random() * months.length)];
        res.json({ month: randomMonth })
    });
    

    【讨论】:

      【解决方案2】:

      试试这个来生成随机数

      const randomMonth = months[Math.floor(Math.random() * (months.length - 1)) + 1];

      【讨论】:

      • 嘿,这看起来不错,一个问题是,我如何从我设置的单词中得到一个随机单词,你发送了什么,它会给出一个随机数。
      • months 在这里是一个数组。所以你可以通过索引来获取它。
      【解决方案3】:
          const months = ["January", "February", "March", "April", "May", "June", 
                    "July", "August", "September", "October", "November",  "December"];
          const randomMonth = months[Math.floor(Math.random() * (months.length - 1)) + 1];
      
       app.get('/v1/month', (req, res) => {
       res.json({ month: randomMonth })
       });
      

      【讨论】:

        【解决方案4】:

        您可以改用rando-jshttps://www.npmjs.com/package/rando-js

        const rando = require("rando-js")
        const months = ["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"];
        
        const randoMonth = rando.fromArray(months)
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2013-07-15
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2018-10-08
          • 1970-01-01
          • 2013-07-01
          • 1970-01-01
          相关资源
          最近更新 更多