<>Object.values()的用法

<>1、语法
Object.values(obj)
<>参数

obj:被返回可枚举属性值的对象。

<>返回值

一个包含对象自身的所有可枚举属性值的数组。

<>2、描述

Object.values()返回一个数组,其元素是在对象上找到的可枚举属性值。属性的顺序与通过手动循环对象的属性值所给出的顺序相同。

<>3、示例
var obj = { foo: 'bar', baz: 42 }; console.log(Object.values(obj)); // ['bar',
42] // array like object var obj = { 0: 'a', 1: 'b', 2: 'c' }; console.log(
Object.values(obj)); // ['a', 'b', 'c'] // array like object with random key
ordering // when we use numeric keys, the value returned in a numerical order
according to the keys var an_obj = { 100: 'a', 2: 'b', 7: 'c' }; console.log(
Object.values(an_obj)); // ['b', 'c', 'a'] // getFoo is property which isn't
enumerable var my_obj = Object.create({}, { getFoo: { value: function() { return
this.foo; } } }); my_obj.foo = 'bar'; console.log(Object.values(my_obj)); //
['bar'] // non-object argument will be coerced to an object console.log(Object.
values('foo')); // ['f', 'o', 'o']
<>4、Polyfill

如果要 Object.values兼容不支持它的旧环境,可在 tc39/proposal-object-values-entries 或
es-shims/Object.values 中找到 Polyfill 。

根据Object.keys()的Polyfill仿写一个:
if (!Object.values) Object.values = function(obj) { if (obj !== Object(obj))
throw new TypeError('Object.values called on a non-object'); var val=[],key; for
(key in obj) { if (Object.prototype.hasOwnProperty.call(obj,key)) { val.push(obj
[key]); } } return val; }
<>5、规范

<>6、浏览器兼容

技术
©2019-2020 Toolsou All rights reserved,
Thread.getContextClassLoader与Thread.getClassLoader()区别线上问题排查之HTTP状态码——415和406MySql语句 递归寻找某输入部门的所有下级部门华为受限老对手受益最大?分蛋糕的人越来越多了!福布斯中国汽车富豪榜:何小鹏第11 李想第14 李斌第15fio使用详解jmeter-while控制器使用总结Redis 计数器 高并发的应用PHP打印输出logpython 动态规划求解单源最短路径