What's the best way (most efficient) to turn all the keys of an object to lower case?

前端 未结 20 2576
野性不改
野性不改 2020-12-04 20:42

I\'ve come up with

function keysToLowerCase (obj) {
  var keys = Object.keys(obj);
  var n = keys.length;
  while (n--) {
    var key = keys[n]; // \"cache\"         


        
20条回答
  •  慢半拍i
    慢半拍i (楼主)
    2020-12-04 21:36

    With TypeScript

    /**
     * Lowercase the keys of an object
     * @example
      lowercaseKeys({FOO: true, bAr: false}); // {foo: true, bar: false}
     */
    export function lowercaseKeys(object: { [key: string]: T }): { [key: string]: T } {
      const result: { [key: string]: T } = {};
    
      for (const [key, value] of Object.entries(object)) {
        result[key.toLowerCase()] = value;
      }
    
      return result;
    }
    

    Usage

    lowercaseKeys({FOO: true, bAr: false}); // {foo: true, bar: false}
    

提交回复
热议问题