通过一个属性,找到对象里的另一个属性

有一个数组里包着一堆对象,对象里的属性有label和value,已知一个label的值,想找到它在对象里对应的value的值怎么找

例如:图片中的value,想要找到对应的label


https://img4.mukewang.com/5ca31f8b0001695207360569.jpg

素胚勾勒不出你
浏览 1087回答 7
7回答

繁星点点滴滴

const findLabel = (arr, value) => arr.find(obj => obj.value === value).label

郎朗坤

假设label的值为123,对象名objDataobjData.forEach(val,index=>{    if(val.label==123){        var newVal=val.value;//此时的newVal就是要找的值    }})

翻翻过去那场雪

var label = 'xxx';var value;objData.some(function (item) {    if ( item.label === label) {        value = item.value;        return true;    }});

当年话下

const findByLabel = (d, label)=>{    let o = d.find(v=>v.label == label)    return o? o.value:undefined}var data = [    {label: '广东省', value: 0},    {label: '吉林省', value: 1},    {label: '湖南省', value: 2},    {label: '广西', value: 3}]findByLabel(data, "广东省") //得到 0findByLabel(data, "a")     //得到 undefined

白板的微信

var data = [        {label: '广东省', value: 0},        {label: '吉林省', value: 1},        {label: '湖南省', value: 2},        {label: '广西', value: 3}    ]    function getValue(label) {        for(var v of data){            if(label==v.label){                console.log(v.value)            }        }    }    getValue("广东省"); //0

杨魅力

var array = [    { label: '山东省', value: '370000' },    { label: '吉林省', value: '220000' },    { label: '湖南省', value: '430000' }]const labelToValue = {}for (let i of array) {    labelToValue[i.label] = i.value}console.log(labelToValue['山东省'])
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript