问:
我有一个逻辑要实现:一个div要判断显示隐藏需要判断commentList.length >= 1 同时需要满足commentList数组里面的至少一个元素的isDeleted 是0不是1,显示这个div元素否则不显示?
回答:
你可以使用以下代码来实现这个逻辑:
const commentList = [
{
'keyword': 'sdfafdaasd8164561',
'xxx': 'xxx',
'xxx': 'xxx',
'isDeleted': 0,
},
{
'keyword': 'sdfafdaasd8164561',
'xxx': 'xxx',
'xxx': 'xxx',
'isDeleted': 1,
},
// 其他元素...
];
const shouldShowDiv = commentList.length >= 1 && commentList.some(comment => comment.isDeleted === 0);
if (shouldShowDiv) {
// 显示div
console.log('显示div');
} else {
// 隐藏div
console.log('隐藏div');
}
这个代码首先检查 commentList
的长度是否大于等于1,然后使用 some
方法检查 commentList
数组中是否至少有一个元素的 isDeleted
属性为0。如果两个条件都满足,则显示div,否则隐藏div。
问:
当有isDeleted且为1的时候意味着已经删除,另一种情况是没有isDeleted这个字段?
回答:
你可以更新你的代码来处理 isDeleted
字段可能不存在的情况。以下是更新后的代码:
const commentList = [
{
'keyword': 'sdfafdaasd8164561',
'xxx': 'xxx',
'xxx': 'xxx',
},
{
'keyword': 'sdfafdaasd8164561',
'xxx': 'xxx',
'xxx': 'xxx',
'isDeleted': 1,
},
{
'keyword': 'sdfafdaasd8164561',
'xxx': 'xxx',
'xxx': 'xxx',
},
{
'keyword': 'sdfafdaasd8164561',
'xxx': 'xxx',
'xxx': 'xxx',
},
{
'keyword': 'sdfafdaasd8164561',
'xxx': 'xxx',
'xxx': 'xxx',
},
];
const shouldShowDiv = commentList.length >= 1 && commentList.some(comment => comment.isDeleted !== 1);
if (shouldShowDiv) {
// 显示div
console.log('显示div');
} else {
// 隐藏div
console.log('隐藏div');
}
在这个代码中,some
方法检查 commentList
数组中是否至少有一个元素的 isDeleted
属性不是1(包括不存在 isDeleted
字段的情况)。如果两个条件都满足,则显示div,否则隐藏div。