为什么此查找功能返回未定义的内容?
let payload = [{
test: ''
}];
console.log(payload.find(item => item.test && item.test === '')); // undefined
console.log(payload.find(item => item.test === '')); // {test: ''}
如果item.test
为真,我认为它应该测试item.test
是否等于”。但是它的显示不像我想的那样。
答案 0 :(得分:2)
由于empty strings are falsey,所以item.test
条件失败并排除了该项目。
答案 1 :(得分:0)
payload.test是一个空字符串,因此if(payload.test)
返回false
您可以将其更改为console.log(payload.find(item => item.test || item.test === ''));