Object.entries()使用

Object.entries()

Object.entries()方法返回一个给定对象自身可枚举属性的键值对数组,其排列与使用 for...in 循环遍历该对象时返回的顺序一致(区别在于 for-in 循环还会枚举原型链中的属性)。

1. 处理字符串

 let arr = 'james'
 let b = Object.entries(arr)
 console.log(b);  //[["0","j"],["1","a"],["2","m"],["3","e"],["4","s"]]

2. 处理对象

const obj = { 0: 'a', 1: 'b', 2: 'c' };
console.log(Object.entries(obj)); // [ ['0', 'a'], ['1', 'b'], ['2', 'c'] ]

2.1 如果对象的属性 的 key是乱序的,就会进行排序

let arr1 = {3: 'kobe', 1: 'james', 2: 'davs'}
let a = Object.entries(arr1)
console.log(a);    // [['1': 'james'],['2': 'davs'],['3': 'kobe']]

3. 处理数组

const arr = [1, 2, 3]; 
console.log(Object.entries(arr));  // [['0', 1], ['1', '2'], ['2', '3']]

3.1 处理数组(里面包含对象)

const arr1 = [{ a: 1 }, 2, 3]; 
console.log(Object.entries(arr1));  // [['0', { a: 1 }], ['1', '2'], ['2', '3']]

3.2 处理数组(里面全是对象)

const arr2 = [{ a: 1 }, { b: 2 }, { c: 3 }]; 
console.log(Object.entries(arr2));  // [['0', { a: 1 }], ['1', { b: 2 }], ['2', { c: 3 }]]

4. 处理数字和浮点数

const num = 123; 
console.log(Object.entries(num));  // []   返回空数组

const float1 = 12.3; 
console.log(Object.entries(float1));  // []  返回空数组
posted @ 2020-08-10 14:36  coder_xyf  阅读(1150)  评论(0编辑  收藏  举报