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

在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"
      }
    ]
    
    
    已采纳该答案
    评论
    解决 无用
    打赏 举报
  • 这个就是数组,遍历数组,数组的元素是对象,取出元素对象,然后对b的值进行修改即可。

    评论
    解决 无用
    打赏 举报

相关推荐 更多相似问题