前言

  在项目开发的过程中有时候会遇到这种情况:预先定义的对象数组或者json对象,后端返回了一个value值,而你需要用的是key值,后端又没有办法返给你key值,这个时候就需要自己根据value值找key值了。

find函数

find函数用来查找目标元素,找到就返回该元素,找不到返回undefined

数组中使用

  定义对象数组:

option:[
    {text:'+',value:0},
    {text:'-',value:1},
    {text:'*',value:2},
    {text:'/',value:3}
]

  方法中使用:

this.option.find(x => x.value === this.value).text

  假设此时this.value值为0,打印上述代码会输出+

json文件中使用

  添加json文件:

{
	"00": "民生银行",
	"01": "工商银行",
	"02": "中国银行",
	"03": "建设银行",
	"04": "农业银行",
	"05": "交通银行",
	"06": "招商银行",
	"07": "兴业银行",
	"08": "中信银行",
	"09": "光大银行",
	"10": "平安银行",
	"11": "华夏银行"
}

  方法中使用:

let arr = require('../data/bankcode.json')

function findKey(obj, value, compare = (a, b) => a === b) {
  return Object.keys(obj).find(k => compare(obj[k], value));
}

console.log(findKey(arr, "民生银行"));

  此时控制台会输出00

Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐