javascript - 在键值对中如何打印出一个不为空的值 JavaScript

标签 javascript arrays null key-value

所以在这样的例子中,我试图打印出“信息”中不包含 null 的名称

let files = [
{
  name: 'untitled',
  information: null
},
{
  name: 'folder'
  information: 'has storage'
},
{
  name: 'new folder',
  information: 'has 42 items'
},

我一直尝试使用的代码是这个,但是当我试图打印出不包含 null 的文件夹的名称时它不起作用

let info = files.filter((a) => {
  if (a.information !== null )
  return a
  });
  
  console.log(info)

当我输入 console.log(info.length) 以查看它是否实际接收时,有多少项没有 null。它确实计算了项目但是当我尝试查看是否可以打印出它们的名称时它只打印 undefined

还有其他方法吗?

最佳答案

filter 返回一个数组,如果你想打印名字你需要再次遍历数组

let files = [{
    name: 'untitled',
    information: null
  },
  {
    name: 'folder',
    information: 'has storage'
  },
  {
    name: 'new folder',
    information: 'has 42 items'
  }
]

let info = files.filter((a) => {
  return a.information !== null;
}).forEach(function(item) {
  console.log(item.name)
})

关于javascript - 在键值对中如何打印出一个不为空的值 JavaScript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53139977/

相关文章:

c# - 无法读取注册表项

apache-spark - Spark 数据帧空值计数

javascript - Internet Explorer 7 的 CSS 翻转问题

JavaScript:获取未定义的值

java - 使用 Streams 映射到二维数组

mysql - 创建MySQL表列什么时候写NOT NULL

javascript - Javascript 恶意软件如何工作?

javascript - 触发textarea ctrl-z 撤消缓冲区更新

javascript - 如何使用 angularJs 在页面中显示数组数据

javascript - 如何将具有旧日期的对象保留在我的数组之外