遍历带有 Symbol 键的对象属性

30

我需要遍历一个具有符号作为键的对象。下面的代码返回一个空数组。

const FOO = Symbol('foo');
const BAR = Symbol('bar');

const obj = {
  [FOO]: 'foo',
  [BAR]: 'bar',
}

Object.values(obj)

我该如何迭代obj中的值,以便获得['foo', 'bar']


4
检查 Object.getOwnPropertySymbols(obj) - Thomas
1
https://developer.mozilla.org/de/docs/Web/JavaScript/Reference/Global_Objects/Symbol - Jonas Wilms
2个回答

29

26

Object.values 只能获取所有可枚举的命名属性(字符串键)的值。

您需要使用 Object.getOwnPropertySymbols

console.log(Object.getOwnPropertySymbols(obj).map(s => obj[s]))

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接