Object.getOwnPropertySymbols()
**Object.getOwnPropertySymbols()
** 静态方法返回一个数组,其中包含在给定对象上直接找到的所有符号属性。
试一试
语法
js
Object.getOwnPropertySymbols(obj)
参数
obj
-
要返回其符号属性的对象。
返回值
在给定对象上直接找到的所有符号属性的数组。
描述
类似于 Object.getOwnPropertyNames()
,您可以将给定对象的全部符号属性作为符号数组获取。请注意,Object.getOwnPropertyNames()
本身不包含对象的符号属性,只包含字符串属性。
由于所有对象最初都没有自己的符号属性,因此 Object.getOwnPropertySymbols()
返回一个空数组,除非您在对象上设置了符号属性。
示例
使用 Object.getOwnPropertySymbols()
js
const obj = {};
const a = Symbol("a");
const b = Symbol.for("b");
obj[a] = "localSymbol";
obj[b] = "globalSymbol";
const objectSymbols = Object.getOwnPropertySymbols(obj);
console.log(objectSymbols.length); // 2
console.log(objectSymbols); // [Symbol(a), Symbol(b)]
console.log(objectSymbols[0]); // Symbol(a)
规范
规范 |
---|
ECMAScript 语言规范 # sec-object.getownpropertysymbols |
浏览器兼容性
BCD 表格仅在启用 JavaScript 的浏览器中加载。