ES6 Object.keys() 获取对象的所有键名

  • Post author:
  • Post category:其他

Object.keys() 方法会返回一个由一个给定对象的自身可枚举属性组成的数组,
数组中属性名的排列顺序和使用 for…in 循环遍历该对象时返回的顺序一致 。

// 1.0 传入对象,返回属性名,keys()是对键名的遍历
var obj = {
    a:"小白",
    b:"小黑",
    c:"大黄"
};
console.log(Object.keys(obj)) // => ["a", "b", "c"] 返回所有属性名
Object.keys(obj).map((key)=>{
    console.log(key,obj[key]); //key=>属性名  obj[key]=>属性值
});

// 2.0 传入字符串,返回索引
var str = 'ab1234';
console.log(Object.keys(str)); // [0,1,2,3,4,5]

// 3.0 传入数组 返回索引
var arr = ["a", "b", "c"];
console.log(Object.keys(arr)); // ["0", "1", "2"]

// 扩展
1、Object.values(),values()是对键值的遍历
Object.values方法返回一个数组,成员是参数对象自身的(不含继承的)所有可遍历( enumerable )属性的 键值。
console.log(Object.values(obj)); // ["小白", "小黑", "大黄"]

2、Object.entries(),entries()是对键值对的遍历
Object.entries方法返回一个数组,成员是参数对象自身的(不含继承的)所有可遍历( enumerable )属性的 键值对数组。
console.log(Object.entries(obj)); 
//得到以下数据
[
    ["a", "小白"],
    ["b", "小黑"],
    ["c", "大黄"]
]

版权声明:本文为qq_40745143原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。