随笔 - 142  文章 - 14  评论 - 0  阅读 - 70351

日常开发记录-当后端返回了键值对中的 value 需要前端自己处理成对应的 label 值时的方法

代码演示:

复制代码
let list = [{ label: 'yibo', value: 0}, { label: '张三', value: 1}, { label: '李四', value: 2}]

function getLabel(list, v, value="value", label="label") {
    if(v !== undefined && Array.isArray(list) && list.length != 0) {
        // !list.find(item => item[value] == v) 
        // 剔除value不存在的情况,不会出现报错信息,value 不存在返回的值就是undefined,取反就是真
        // value存在就是返回{ label: 'yibo', value: 0},取反就是假
        return !list.find(item => item[value] == v) ? 
        v:list.find(item => item[value] == v)[label]
    }else {
        return v
    }
}   

let res = getLabel(list, 0)
let res1 = getLabel(list, 1)
let res2 = getLabel(list, 3)
console.log(res, res1, res2)
复制代码

 

posted on   法老的微笑  阅读(44)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 零经验选手,Compose 一天开发一款小游戏!
· 一起来玩mcp_server_sqlite,让AI帮你做增删改查!!
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

点击右上角即可分享
微信分享提示