对象中使用Symbol来定义属性名
const obj={
name:'alex',
[Symbol('imooc')]:18,
[Symbol('Symbol.cc')]:()=>console.log('hello')
};
console.log(obj)
console.log(obj[Symbol.imooc]);// undefine
console.log(obj[Symbol.cc]) //undefined老师,我使用Symbol数据来定义属性名,那么我怎样才能获得这些值呢?直接使用中括号打印结果是undefined
数组中的Symbol(Symbol.iterator)可以直接使用[1,2,3][Symbol.iterator]()来调用,为什么我这不可以?
相关截图:

12
收起
正在回答
1回答
同学你好,解答如下:
1、改变一下定义方式,Symbol()提前声明参考:


2、对象中没有遍历器,所以不能用Symbol.iterator调用。
3、如果想调用对象中的Symbol('Symbol.cc')方法,可以这样:


自己再测试下,祝学习愉快!



恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星