如何使用咖喱函数循环

一个简单的应用程序。我需要浏览日志中的条目。日志包含文本和级别。我在主函数中手动在日志中创建条目。现在,我需要浏览日志数组中的所有条目并打印内容(内容)。但是,我需要使用咖喱功能来做到这一点。


这是主要功能:


function main() {

    const firstLine = ['21', ';'];

    const level = '2';

    const sep = firstLine[1];

    const myLog = joinedLogger(level, sep);

    const n = 4;

    let messages = [];

    var ob = {level: 20, text: 'foo'};

    messages.push(ob);

    ob = {level: 90, text: 'bar'};

    messages.push(ob);

    console.log(messages);

    myLog(...messages);

}

主要的();


当然,我在控制台中看到了消息中包含对象的数组。现在,我需要在joinedLogger 函数中做一些事情。但在这里我不太确定我应该如何编码:


function joinedLogger(level, sep) {

    return function(arr){

        console.log('level',level);

        console.log('sep',sep);

        console.log('arr',arr);

    }

}

现在,控制台正在打印:


[ { level: 20, text: 'foo' }, { level: 90, text: 'bar' } ]

level 4

sep ;

arr { level: 20, text: 'foo' }

但我不明白如何编写joinedLogger 函数以查看所有数组。而不仅仅是像现在这样的第一个元素。


跃然一笑
浏览 198回答 1
1回答

慕少森

您可以在从joinedLogger 函数返回的函数中使用rest 运算符。function joinedLogger(level, sep) {return function(...arr){    console.log('level',level);    console.log('sep',sep);    console.log('arr',arr);}}
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript