对象中使用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 星