我正在努力弄清楚为什么我会得到"未定义"在尝试获取某个对象值时。
我的对象,称为" message"看起来像这样:
{"username":"123","password":"123"}
当我尝试使用以下内容获取用户名或密码时:
message.username
message['username']
我得到"未定义"。
获取值的正确方法是什么?
获取消息并显示消息的代码:
window.messageBus.onMessage = function(event) {
displayText(event.data); // spits out {"username":"123","password":"123"}
}
function displayText(message) {
document.getElementById("message").innerHTML = message.username + ' - ' + message.password;
};
编辑 - Chromecasts" window.messageBus.onMessage"正在收到该对象。功能。我假设是因为我将消息作为一个正确的对象发送,它应该作为一个正确的对象回吐,但似乎可能不是这样的情况!
答案 0 :(得分:1)
嗯,不知道为什么它没有使用我发布的代码,因为无论如何它应该有。
无论如何,我通过在传递给“displayText()”的“message”变量上使用“JSON.parse()”来修复它
然后我可以使用“message.username”来获取值。
答案 1 :(得分:-3)
无法在""中定义变量,请参阅以下示例:
var person = {firstName:"John", lastName:"Doe", age:50, eyeColor:"blue"};
alert(person.firstName);
这是在Javascript中定义和访问对象的正确方法