gpt4 book ai didi

javascript - JS,函数返回 undefined 而不是 true 或 false

转载 作者:行者123 更新时间:2023-11-30 13:47:44 25 4
gpt4 key购买 nike

我有一个函数可以检查一些参数并相应地返回 true/false。

我的问题是它返回 true(最后一个 return true;),但是当我再次调用这个函数时它会返回 console.log(return 1)console.log(return 2),该函数只执行 console.log() 然后返回 undefined 而不是 true。我的假设是它不允许从 .map() 返回,除非它完成运行?

isFlashingUnderscore() {
let count = 0;
if (!_.isEmpty(this.currentElement.value)) {
_.map(Object.keys(this.currentElement.value), key => {
count++
if (this.currentElement.value[key].object_type == 'date_range') {
return false;
} else if (this.currentElement.value[key].object_type == 'date') {
if (count >= 2) {
console.log('return 1');
return false;
} else {
console.log('return 2');
return true;
}
} else {
return true;
}
})
} else {
console.log('returns this true')
return true;
}
}

最佳答案

不是您实际问题的答案,但您的代码可以简化。在 return 之后,函数的其余部分不会被执行。你可以利用它:

isFlashingUnderscore(){
let count = 0;
if(!_.isEmpty(this.currentElement.value)){
_.map(Object.keys(this.currentElement.value), key => {
count++
if (this.currentElement.value[key].object_type == 'date_range'){
return false;
}
if(this.currentElement.value[key].object_type == 'date'){
return false;
}
if (count >= 2) {
return false;
}
})
}
return true;
}

通过简化它,可以更容易地理解正在发生的事情以及您不希望发生的事情。

关于javascript - JS,函数返回 undefined 而不是 true 或 false,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58958017/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com