[英]how to return an empty array with array.map
如果obj.chk!= true,我需要返回一个空数组,以检查是否未检查toDos
function listChk()
{
if (!chkExist('./toDoArr')) {console.log('Please create toDo list first!')}
else {
let toDoArr = JSON.parse(fs.readFileSync('./toDoArr'))
let chkToDoArr = toDoArr.map(function (obj) {
if (obj.chk === true){
console.log( obj.toDo)
return obj.toDo
}
});
console.log(chkToDoArr) // >> [ undefined, undefined ]
if (chkToDoArr.length < 1)
console.log('no checked toDos or empty list');
}
}
谢谢
我相信您需要使用的是过滤器而不是地图。 例如:
let chkToDoArr = toDoArr.filter(function (obj) {
return obj.chk === true
})
console.log(chkToDoArr) // >> []
过滤器返回结果数组,比较函数返回真值。
let chkToDoArr = toDoArr.filter(obj => obj.chk).map(obj => obj.toDo)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.