【发布时间】:2018-06-19 17:51:50
【问题描述】:
以下情况:
var myVehicle = { brand: 'Tesla' };
var isMoving = Symbol();
var currentStatus = Symbol();
myVehicle[isMoving] = true;
myVehicle[currentStatus] = 'moving';
我想在我的对象myVehicle 中打印使用的“符号属性”的名称
console.log(
myVehicle[isMoving], // true
myVehicle[currentStatus], // 'moving',
Reflect.ownKeys(myVehicle), // [ 'brand', Symbol(), Symbol() ]
Object.getOwnPropertySymbols(myVehicle), // [ Symbol(), Symbol() ]
);
我怎样才能得到这样的名字:
[isMoving, currentStatus] 而不是[ Symbol(), Symbol() ]
【问题讨论】:
-
为什么不将名称作为值,而不是对内部值的符号引用,这是不可读的。
-
嗨@Nina,在实际用例中它不是这样的对象,它是一个当前移动的 div 框,我使用了一个简短(可能毫无意义)的示例,..所有我必须知道的是:我怎样才能得到名字,..
标签: javascript symbols