首页 > 解决方案 > 关于 Javascript 对象的字符串键顺序

问题描述

我测试过的所有浏览器

Object.keys({ a: 'a', c: 'c', b: 'b' })

给予

["a", "c", "b"]

我的问题是:是否有 Javascript 实现可以提供其他功能?

我的问题不是:标准能保证吗?

标签: javascript

解决方案


是的,有。这是我的实现,它不按顺序返回键:

Object.keys = obj => {
  const result = [];
  for(let key in obj) result.push(key);
  result.sort(() => Math.random() * 2 - 1);
  return result;
};

推荐阅读