recherche

Maison  >  Questions et réponses  >  le corps du texte

javascript - Comment un objet JS obtient-il la valeur clé via la valeur Value?

Généralement, la valeur peut être obtenue via obj.key, mais si je veux faire l'inverse, que dois-je faire ?

曾经蜡笔没有小新曾经蜡笔没有小新2751 Il y a quelques jours962

répondre à tous(6)je répondrai

  • 大家讲道理

    大家讲道理2017-06-30 10:00:56

    Il n'y a aucun problème avec

    keyvalue的映射是单向的,并且value并不具有唯一性。
    所以由key拿到value, mais l'inverse n'est pas possible.

    répondre
    0
  • 过去多啦不再A梦

    过去多啦不再A梦2017-06-30 10:00:56

    for...inJugement et acquisition d'objets en boucle ?

    répondre
    0
  • 我想大声告诉你

    我想大声告诉你2017-06-30 10:00:56

    J'ai une méthode stupide

    Parcourez l'objet et déterminez si la valeur de l'objet actuel est égale à la valeur à vérifier si elle correspond à la clé de sortie

    .

    répondre
    0
  • 世界只因有你

    世界只因有你2017-06-30 10:00:56

    La valeur de sortie n'est pas unique. Elle peut être obtenue par valeur.

    répondre
    0
  • 三叔

    三叔2017-06-30 10:00:56

    Pour référence, si vous utilisez du lodash, vous pouvez l'utiliser directement _.findKey

    var data = {
      a: 1,
      b: 'string',
      c: {},
      d: {a: 98, b: 'str'}
    }
    
    function findKey (value, compare = (a, b) => a === b) {
      return Object.keys(data).find(k => compare(data[k], value))
    }
    
    var val = data.b
    findKey(val) // b
    
    // 自定义比较函数,比如结合 lodash 可以
    findKey({a: 98, b: 'str'}, _.isEqual) // d

    répondre
    0
  • 怪我咯

    怪我咯2017-06-30 10:00:56

    Puis-je le recycler ? Sortez $.each comme ça

    répondre
    0
  • Annulerrépondre