Какой лучший (самый эффективный) способ превратить все ключи объекта в нижний регистр?

мы придумали

function keysToLowerCase (obj) {
  var keys = Object.keys(obj);
  var n = keys.length;
  while (n--) {
    var key = keys[n]; // "cache" it, for less lookups to the array
    if (key !== key.toLowerCase()) { // might already be in its lower case version
        obj[key.toLowerCase()] = obj[key] // swap the value to a new lower case key
        delete obj[key] // delete the old key
    }
  }
  return (obj);
}

Но я'Я не уверен, как v8 будет вести себя с этим, например, действительно ли он удалит другие ключи или он только удалит ссылки, а сборщик мусора укусит меня позже?

Также я создалэти тестыЯЯ надеюсь, что вы могли бы добавить свой ответ там, чтобы мы могли видеть, как они совпадают.

РЕДАКТИРОВАТЬ 1: По-видимому, согласно тестам, этобыстрее, если мы неt проверить, что ключ уже в нижнем регистре, но, будучи в стороне быстрее, создаст ли он больше помех, игнорируя это и просто создавая новые ключи в нижнем регистре? Будет ли сборщик мусора этим доволен?

Ответы на вопрос(13)

Ваш ответ на вопрос