准备数据

 data(){
        return {
            obj:{
                '001':'a',
                '002':'b',
                '003':'c',
                '004':'d'
            }
        }
    }, 

1、遍历对象获取所有的key和value

for (let k in this.obj){
    console.log(k)
    console.log(this.obj[k])
}

2、根据key获取对应的value

let _this = this
   function findValue(key) {
       for (let k in _this.obj){
            if (k===key){
                return _this.obj[k]
           }
      }
   }
console.log(findValue('001'))
// 获取对象的key
 let obj = {
    a:{
      b:{
        c:{f:"aa"}
      },
      d:{
        e:{g:"bb"},
        h:{i:"cc"}
      },
      j:{
        k:"dd"
      }
    }
  };

let a = [];
function getKey(obj,isKey) {
  if (typeof obj !== 'object' || obj == null) {
        return
      }

  for (let key in obj){
   typeof obj[key] === 'object' ? getKey(obj[key]) : '';
   a.push(key)
  }
// f c b g e i h d k j a

3、根据value获取对应的key

function findkey(obj,value,fn = (a, b) => a === b){
        return Object.keys(obj).find(k => fn(obj[k],value))
    }
    //  let fn = (a,b)=> {
    //      return a=== b
    //  }
    // console.log(fn(1,2));
    console.log(findkey(this.obj, 'a'));  

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐