Vue 3 + TypeScript的方式,将对象的键名和键值提取到数组中

1、Vue 3 + TypeScript的方式,将对象的键名和键值提取到数组中

已知data1如下:

data1 = [

            { A: 11,B: 22,C: 33,D: 44 },

        ],

得到data2如下

data2 = [
            {
                name: "A",
                value: "11"
            },
            {
                name: "B",
                value: "22"
            },
            {
                name: "C",
                value: "33"
            }
        ]
<script lang="ts">
import { defineComponent } from 'vue';

export default defineComponent({
  data() {
    const data1 = [
      { A: 11, B: 22, C: 33, D: 44 },
    ];

    const data2 = Object.keys(data1[0]) // Get keys of the first object in data1
      .filter(key => ['A', 'B', 'C'].includes(key)) // Filter keys A, B, C
      .map(key => ({
        name: key, // Set name as the key (A, B, C)
        value: data1[0][key].toString(), // Set value as the corresponding value converted to string
      }));

    return {
      data2,
    };
  },
});
</script>

2、使用Vue 3 + TypeScript的方法,将data1的键名(A、B、C)和对应的值赋值给data2namevalue字段

data1如下:

data1 = {
            A: 1, B: 2, C: 3, D: 4
        }

得到data2如下:

data2 = [
            {
                name: 'A',
                value: 1,
            },
            {
                name: 'B',
                value: 2,
            },
        ]
<script lang="ts">
import { defineComponent } from 'vue';

export default defineComponent({
  data() {
    const data1 = {
      A: 1,
      B: 2,
      C: 3,
      D: 4,
    };

    const data2 = Object.keys(data1)
      .filter(key => ['A', 'B'].includes(key))
      .map(key => ({
        name: key,
        value: data1[key],
      }));

    return {
      data2,
    };
  },
});
</script>
  • 10
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值