m0_60877809 2021-09-17 13:02 采纳率: 72.7%
浏览 60
已结题

在vue中如何用map来替换数组对象中的某一个元素

**  data () {
    return {
abc:[
  {a:'1',b:'2'},
  {a:'1',b:'张三'},
  {a:'1',b:'张三'},
  {a:'1',b:'3'},
  {a:'11',b:'李四'},
  {a:'1',b:'3'},
]
  
      }
    }**

想让数组abc中的 b字段里面的张三 变成 ‘三’ ,李四变成 ‘四’

  • 写回答

2条回答 默认 最新

  • tonyzhangcn 2021-09-17 13:21
    关注

    你要的是这个效果吗?

    let abc = [
    
      {a:'1',b:'2'},
    
      {a:'1',b:'张三'},
    
      {a:'1',b:'张三'},
    
      {a:'1',b:'3'},
    
      {a:'11',b:'李四'},
    
      {a:'1',b:'3'},
    
    ];
    let mapping = {"张三":"三","李四":"四"};
    abc.map((v,i) =>{v.b=mapping[v.b]? mapping[v.b]:v.b; return v});
    //这个时候abc的值应该是你想要的效果了。
    [
      {
        "a": "1"
      },
      {
        "a": "1",
        "b": "三"
      },
      {
        "a": "1",
        "b": "三"
      },
      {
        "a": "1"
      },
      {
        "a": "11",
        "b": "四"
      },
      {
        "a": "1"
      }
    ]
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 9月25日
  • 已采纳回答 9月17日
  • 创建了问题 9月17日

悬赏问题

  • ¥15 我想在一个软件里添加一个优惠弹窗,应该怎么写代码
  • ¥15 fluent的在模拟压强时使用希望得到一些建议
  • ¥15 STM32驱动继电器
  • ¥15 Windows server update services
  • ¥15 关于#c语言#的问题:我现在在做一个墨水屏设计,2.9英寸的小屏怎么换4.2英寸大屏
  • ¥15 模糊pid与pid仿真结果几乎一样
  • ¥15 java的GUI的运用
  • ¥15 Web.config连不上数据库
  • ¥15 我想付费需要AKM公司DSP开发资料及相关开发。
  • ¥15 怎么配置广告联盟瀑布流