javascript 数组 'undefined' 控制台日志

标签 javascript arrays json undefined

我想从安排中去掉“房间名”。但是当我运行日志时,我得到了未定义的信息。

var roomNameArr = presenterArray.filter(function(item){
   console.log("## item.roomName : "+item.roomName);
   return item.roomName === viewerRoomName;
});

当我运行日志时,结果如下。

console.log("## roomNameArr : "+JSON.stringify(roomNameArr));

roomNameArr = [{"id":"1","pipeline":{"domain":null,"_events":{},"_eventsCount":7,"id":"5465b70f-613f-4184-80d3-895b3dcfa2c7_kurento.MediaPipeline"},"webRtcEndpoint":{"domain":null,"_events":{},"_eventsCount":6,"id":"5465b70f-613f-4184-80d3-895b3dcfa2c7_kurento.MediaPipeline/ac2bc699-bddf-44e2-a711-6444737109a1_kurento.WebRtcEndpoint"},"presenterRoomNum":"1","roomName":"1"}]

当我用log取出变量a时,'undefined'就出来了。

console.log("## roomNameArr1 : "+roomNameArr['roomName']);
console.log("## roomNameArr1 : "+roomNameArr['5']);

我还在四处游荡,我需要你帮助我。

最佳答案

作为roomNameArr是一个对象数组,该数组中的所有对象总是有一个索引号。

所以如果你想访问 key:value roomNameArr 中的任何对象数组,您必须定义该对象存在的索引号。

在你的情况下,你必须写类似的东西

console.log("## roomNameArr1 : "+roomNameArr[0]['roomName']);

console.log("## roomNameArr1 : "+roomNameArr[0].roomName);

正确获取输出。

关于javascript 数组 'undefined' 控制台日志,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55350277/

相关文章:

c# - 从 xml 加载对象,在动态 UI 中编辑值并保存回 xml

javascript - 如何动态更改物化 CSS 中的 Accordion 元素?

javascript - 如何使用 For 循环反向打印字符串?

c# - 从类/对象列表中查找匹配字符串

从c中的结构数组创建一个字符串

php - 将 JSON 字符串作为字段数据放在 MySQL 上

java - 如何在Android中读取相对路径上的Json

json - SQL Server 提示无效的 json

javascript - 当动态键值为数组时,如何使用 ng-repeat

javascript - 如何在 QuillJS/Rich-Text 增量中分配宽度和高度属性