• javascript二维数组(19)不要键名只保留值的算法


    在数组var a=[
    {pre1_day_off:1},
    {pre2_day_off:2},
    {pre3_day_off:3}
    ]中,如果去除键名只保留值,形成[1,2,3]这样的数组格式

    在JavaScript中,你可以通过使用Array.prototype.map函数来实现这个目标。map函数遍历数组的每个元素,然后调用你提供的函数,返回一个新的数组。

    在这个例子中,你可以使用以下代码:

    var a = [
        {pre1_day_off:1},
        {pre2_day_off:2},
        {pre3_day_off:3}
    ];
    
    var result = a.map(function(item) {
        return item.pre1_day_off || item.pre2_day_off || item.pre3_day_off;
    });
    
    console.log(result);  // 输出:[1, 2, 3]
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11

    这段代码将遍历a数组中的每个元素,并返回该元素的pre1_day_offpre2_day_offpre3_day_off属性的值。如果这些属性不存在或者值为undefined,那么将返回undefined。最终,这段代码将创建一个新的数组,其中包含了所有这些值。

    如果你确定这些对象只包含这些属性,并且这些属性的值都是数字,那么你可以简化这个函数,直接返回第一个非undefined的值:

    var result = a.map(function(item) {
        for (var key in item) {
            if (item[key] !== undefined) {
                return item[key];
            }
        }
        return undefined;
    });
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8

    在数组var a=[
    {pre1_day_off:1},
    {pre2_day_off:2},
    {pre3_day_off:3}
    ]中,如果去除键值,只保留值,如果有多个键值,如何形成[1,2,3…N]这样的数组格式

    在JavaScript中,你可以通过使用Array.prototype.map函数和Object.values函数达到你的目标。map函数可以遍历数组的每个元素,然后调用你提供的函数,返回一个新的数组。Object.values函数则可以获取对象的所有值。

    下面是一个具体的例子:

    var a = [
        {pre1_day_off:1},
        {pre2_day_off:2},
        {pre3_day_off:3}
    ];
    
    var result = a.map(function(item) {
        return Object.values(item).reduce((acc, cur) => acc.concat(cur),);
    });
    
    console.log(result);  // 输出:[1, 2, 3]
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11

    这段代码将遍历a数组中的每个元素,并获取每个对象的所有值(即对象的键值)。然后,使用reduce函数将所有的键值(即值)合并到一个数组中。最后,返回一个只包含这些值的新数组。如果有多个键值,这个新数组将包含所有的值。


    @漏刻有时

  • 相关阅读:
    Hadoop学习总结(使用Java API操作HDFS)
    EEG-fNIRS跨模态迁移学习优化BCI系统分类精度
    Vue3.0的设计目标是什么?做了哪些优化
    pdf怎么转换成jpg或png格式的图片?
    第五课:C++实现加密PDF文档解密
    excel 十万级数据秒级导出
    【mysql学习笔记23】索引优化
    BIO剖析
    MES管理系统的设计与实施
    傻瓜式快速下载TCGA数据(win x86版本)
  • 原文地址:https://blog.csdn.net/weixin_41290949/article/details/133747412