「代码片段」JavaScript 数组的 reduce() 方法

吐槽/反馈/建议:我的咸鱼心  爱发电-@wdssmq  FeedsPub-wdssmq

刷贴吧时看到的一个需求示例,让 AI 写了下用的 reduce() 方法,之前只是大概知道有这么个东西,姑且借这个例子加深下印象。

文档

Array.prototype.reduce() - JavaScript | MDN

https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/Array/Reduce

代码案例

(() => {
    const data = [
        { k: "a", v: 1 },
        { k: "a", v: 1 },
        { k: "a", v: 2 },
        { k: "a", v: 3 },

        { k: "b", v: 3 },
        { k: "b", v: 3 },
        { k: "b", v: 2 },

        { k: "c", v: 2 },
        { k: "c", v: 1 },
        { k: "c", v: 1 },
    ];
    /* 转换成如下格式
        [
            { k: "a", v: [1, 2, 3] },
            { k: "b", v: [3, 2] },
            { k: "c", v: [2, 1] }
        ];
     */
    const result = data.reduce((acc, cur) => {
        const { k, v } = cur;
        const index = acc.findIndex(item => item.k === k);
        if (index === -1) {
            acc.push({ k, v: [v] });
        } else {
            acc[index].v.push(v);
            // 去重,AI 还是会时不时无视一些明明显式声明的要求。。- -
            acc[index].v = [...new Set(acc[index].v)];
        }
        return acc;
    }, []);

    console.log(result);
})();

结束

虽然有点水,但是好像也没啥好说的。。

一些其他文章:


爱发电

本文标题:《「代码片段」JavaScript 数组的 reduce() 方法》作者:沉冰浮水
原文链接:https://www.wdssmq.com/post/20231130787.html
特别注明外均为原创,转载请注明。

分享到微信

扫描二维码

可在微信查看或分享至朋友圈。

相关文章

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

网站分类

搜索

本周旧文

2024 年了,姑且备份下嘟特存档。。

……,一个不知名的小众样式库 + 内联样式混写这种入坑姿势确实很有槽点,但是,「已经开始学」并且能够持续是绝对值得肯定的。。

在贴吧看过很多提问了,就有种错觉:好多人为了提一个问题专门注册了贴吧,问题本身可能得到有效回答,也可能没有(和提问的点及具体姿势有关。。但无论如何,之后就和注销了账号一样没有然后了,好像之后永远不用学相应的东西一样。。

《恶魔娃娃》

- 他们正研究你究竟是真正的大人,还是伪装成大人的小孩

- 我自己都研究很久了

乐高 DC 里,(基本就蝙蝠侠家,,年龄最小的那个无论是谁感觉人设都会变得一样 - -

所以,就感觉和祥林嫂一样,每天都需要向外「签到」自己的情绪感受,然而又并没有什么「需要」我这样的签到……

只要梦里出现学校的概念,形式和反抗好像也都不重要了,,天还没亮,骑自行车去上学,没走多远「想起来」并不需要上学的,下来搬起车原地调头然后推回家。。

《K 星异客》里,「青鸟」真的是等来的,或者说是突然出现然后引发改变的外部因素。。。

梦的最后也是又一次意识到教室里的同学只是幻境中的投影,被困住的只有我;虽然也终于总结出,在梦里从来没有和同学的投影有过冲突和争执,甚至还附和我反驳「管理者」身份被进一步放大并不特指某一个人的老师。。

就和大脑会突然播放某一首歌一样,「讨厌自己」这句话也是自己突然就会播放一次,然后频率更高。。

学校,学校,学校,总是梦到学校,,就好像灵魂被诅咒禁固一样。。

爱发电支持者

最新留言

友情链接

  • 订阅本站的 RSS 2.0 新闻聚合
召唤伊斯特瓦尔