首页 > 解决方案 > Javascript:如果一个元素可显示,则在数组中显示数据

问题描述

我只是 javascript 的新手,目前正在使用数组和对象。

如果列中的搜索为真,有人可以帮我获取数据。我在数组中有列

let columns = [
 {
   data: "id",
   searchable: false
 },
 {

   data: "first_name",
   searchable: true
 },
 {
   data: "last_name",
   searchable: true
 }
];
let filter = {
  target: columns, // if searhable is true
};

如果我控制台记录过滤器。它看起来像这样。 结果

{
target: [
  0: "first_name"
  1: "last_name"
  ]
}

标签: javascriptarrays

解决方案


使用Array.filter()Array.map()的单线解决方案。

const columns = [
 {
   data: "id",
   searchable: false
 },
 {

   data: "first_name",
   searchable: true
 },
 {
   data: "last_name",
   searchable: true
 }
];

const filter = {
  target: columns,
};

const result = columns.filter(column => column.searchable).map(column => column.data);
filter.target = result;

console.log(filter);


推荐阅读