根据传递的参数数量,运行不同数量的行。

编程入门 行业动态 更新时间:2024-10-10 03:26:40

根据传递的参数<a href=https://www.elefans.com/category/jswz/34/1770431.html style=数量,运行不同数量的行。"/>

根据传递的参数数量,运行不同数量的行。

我想用不同数量的输入来运行这段代码,因为我正试图启动一个npm库。我唯一的问题是,我不知道如何实现我想要的东西。

基本上,我希望函数 "testfunc(){}"能够运行一行特定的代码,每次用一个参数替换其中的一部分。下面是一个例子。

  function testfunc{

    for (var i = 0; i < arguments.length; i++) {

    console.log(arguments[1]);
    console.log(arguments[2]);
    console.log(arguments[3]);
    console.log(arguments[4]);
    console.log(arguments[5]);
    }

    }

这是我现在的一个例子。我想让用户能够改变消息的编辑次数。

client.on('message', message => {

if(message.content == '69'){

function sleep(ms) {
    return new Promise(resolve => setTimeout(resolve, ms));
    }

const wait = ms => new Promise(resolve => setTimeout(resolve, ms));

function animate() {

    for (var i = 0; i < arguments.length; i++) {
        console.log(arguments[i]);
        message.channel.send(arguments[1]).then((sentMessage) => wait(1*1000).then((waitDone) => sentMessage.edit(arguments[i])))


// message.channel.send(arguments[1]).then((sentMessage) => {
//     wait(1*1000).then((waitDone) => sentMessage.edit(arguments[1])).then((sentMessage) => {
//         wait(1*1000).then((waitDone) => sentMessage.edit(arguments[2])).then((sentMessage) => {
//             wait(1*1000).then((waitDone) => sentMessage.edit(arguments[3])).then((sentMessage) => {
//                 wait(1*1000).then((waitDone) => sentMessage.edit(arguments[4]))
//                 })
//             })
//         })
//     })
// }

}

animate('1','2','3','4')

}}})
client.login(token);

我相信可能有一个简单的答案我在这里忽略了,我已经开始研究做一个while循环的想法,但我不能完全理解...

回答如下:

使用 async/await 这可以大大简化。基本上,你只需迭代函数的参数,并等待每个异步调用,然后再继续处理下一个参数。

async function animate() {
    // send with the first argument
    const sentMessage = await message.channel.send(arguments[0]);
    // continue editing with the remaining args
    for (let i=1; i < arguments.length; i++) {
        await wait(1000);
        await sentMessage.edit(arguments[i]);
    }
}

更多推荐

根据传递的参数数量,运行不同数量的行。

本文发布于:2024-05-13 11:16:37,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1759476.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:数量   参数

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!