我从一个 Web 服务中检索到了一些数据,现在可以将这个对象打印到控制台中。
data.cashiers.forEach(c => {
console.log('c is ' + c);
console.log('c.name is ' + c.name);
$('#sales_entry_cashier').append(new Option(c.name, c.uid));
});
奇怪的是,它完整地打印了c
,但拒绝说c.name
有一个值,如下所示:
c is {"uid":"6a661e7d-61a7-477f-b69c-f328b06819a3","name":"Admin"} sales.js:87
c.name is undefined sales.js:88
然后,当它尝试附加名称和uid时,它当然会崩溃。我该怎么办?很明显,在输出的Object中,有c.name,即“Admin”-为什么我无法访问该属性?
console.log
之前放置Object.freeze(c)
。如果代码的其他部分正在更改对象,它将抛出错误。 - lmarqsconsole.log
支持多个参数;console.log("c is", c);
以及console.log("c.name is", c.name)
将分别为每个参数执行输出格式化。您会注意到,c
将被格式化为一个字符串。 - Sebastian Simon