javascript - 选项卡为空时无法形成结构并过滤掉选项卡
问题描述
我试图expectedOutput
通过迭代选项卡数据和过滤器选项卡来形成结构
let tabs = {
'tab1': [{id:'1',mnemonic:'first',value:'jim'},
{id:'2',mnemonic:'second',value:'kim'}],
'tab2': [{id:'1',mnemonic:'first',value:'jim'},
{id:'2',mnemonic:'second',value:'kim'}],
'tab3': []
}
let expectedOutput = {
'tab1': [{id:'1',mnemonic:'first',value:'jim'},
{id:'2',mnemonic:'second',value:'kim'}],
'tab2': [{id:'1',mnemonic:'first',value:'jim'},
{id:'2',mnemonic:'second',value:'kim'}],
}
let newTabs = Object.fromEntries(
Object.entries(tabs).map(([tab, data]) => {
if (tabs[tab] && tabs[tab].length > 0)
data = data.map(d => ({ ...d }));
return [tab, data];
})
);
console.log("original", tabs);
console.log("new", newTabs);
解决方案
也可以试试:
const tabs = {
'tab1': [{id:'1',mnemonic:'first',value:'jim'},
{id:'2',mnemonic:'second',value:'kim'}],
'tab2': [{id:'1',mnemonic:'first',value:'jim'},
{id:'2',mnemonic:'second',value:'kim'}],
'tab3': []
}
const newTabs = {}
Object.keys(tabs).forEach(a => tabs[a].length ? newTabs[a] = tabs[a] : '')
console.log(newTabs)
推荐阅读
- c++ - 一个 static_assert 使另一个 static_assert 失败(内部类为 is_default_constructible)
- vb.net - 为什么 Access 数据库引擎会给出一个奇怪的错误?
- verilog - 使用 Verilator 和 VPI 读取 regs 数组
- java - Java 8 - 如何从列表映射中获取单个值?
- c# - 如何从 Untiy 的 Firebase 控制台获取最新的 ID
- python - 如何在进程之间共享对象?
- google-apps-script - 我正在尝试自动隐藏 Google 表格中的表格
- python - 使用 Boto3 添加安全组列表会出现错误“安全组不存在”
- linux - Ansible - 在 Linux 上更改用户密码
- python - Tensorflow:自定义损失函数导致函数构建代码错误之外的操作