Javascript 无法获取对象值

Javascript 无法获取对象值,javascript,object,Javascript,Object,我正在努力弄清楚为什么在尝试获取某个对象值时会出现“未定义”的情况 我的对象称为“消息”,如下所示: {"username":"123","password":"123"} 当我尝试使用以下内容获取用户名或密码时: message.username message['username'] 我得到“未定义” 获取值的正确方法是什么 获取并显示消息的代码: window.messageBus.onMessage = function(event) { displayText(event.

我正在努力弄清楚为什么在尝试获取某个对象值时会出现“未定义”的情况

我的对象称为“消息”,如下所示:

{"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;
};

编辑-ChromeCast“window.messageBus.onMessage”功能正在接收对象。我认为,因为我将消息作为一个适当的对象发送,所以它应该作为一个适当的对象返回,但似乎情况并非如此

在“”中定义变量没有意义,请参见以下示例:

var person = {firstName:"John", lastName:"Doe", age:50, eyeColor:"blue"};
alert(person.firstName);

这是在Javascript中定义和访问对象的正确方法。好吧,我不知道为什么它不能与我发布的代码一起工作,这是它应该有的

无论如何,我通过在传递给“displayText()的“message”变量上使用“JSON.parse()”修复了它


然后,我可以使用“message.username”来获取值。

这应该可以。您可以显示完整的代码吗?请显示一些代码。不可能说出这样的错误。对象是如何创建的?它是如何访问的?你能告诉我们整个代码吗?访问对象的两种方法都应该是有效的。显然问题出在其他地方,您显示的对象定义是正确的,可以在赋值中使用。你需要揭示更广泛的背景。你所做的编辑仍然不足以让我们帮助你。请向我们展示您的代码,或者您的web浏览器开发控制台的一些输出。这无关紧要。帕布罗先生写的代码应该是有效的。我确信他在闭包中声明了这个对象,并从外部调用它,或者是其他原因导致了这个问题。