Swap key with value JSON

后端 未结 18 2491
花落未央
花落未央 2020-11-29 23:54

I have an extremely large JSON object structured like this:

{A : 1, B : 2, C : 3, D : 4}

I need a function that can swap the values with

18条回答
  •  悲哀的现实
    2020-11-30 00:07

    function swap(json){
      var ret = {};
      for(var key in json){
        ret[json[key]] = key;
      }
      return ret;
    }
    

    Example here FIDDLE don't forget to turn on your console to see the results.


    ES6 versions:

    static objectFlip(obj) {
      const ret = {};
      Object.keys(obj).forEach(key => {
        ret[obj[key]] = key;
      });
      return ret;
    }
    

    Or using Array.reduce() & Object.keys()

    static objectFlip(obj) {
      return Object.keys(obj).reduce((ret, key) => {
        ret[obj[key]] = key;
        return ret;
      }, {});
    }
    

    Or using Array.reduce() & Object.entries()

    static objectFlip(obj) {
      return Object.entries(obj).reduce((ret, entry) => {
        const [ key, value ] = entry;
        ret[ value ] = key;
        return ret;
      }, {});
    }
    

提交回复
热议问题