Is there any way to rename js object keys using underscore.js

后端 未结 13 1791
小蘑菇
小蘑菇 2020-12-05 01:21

I need to convert a js object to another object for passing onto a server post where the names of the keys differ for example

var a = {
    name : \"Foo\",
          


        
13条回答
  •  自闭症患者
    2020-12-05 02:16

    // key_map: {old_name1: new_name1, ... }
    function rename_keys(object, key_map, is_picked=false){
      keys = _.keys(key_map);
      new_keys = _.values(key_map);
      picked = _.pick(object, keys);
      renamed = _.object(new_keys, _.values(picked));
      if(is_picked) return renamed;
    
      return _.chain(object).omit(keys).extend(renamed).value();
    }
    

    This may be slower than above answers.

提交回复
热议问题