忽略对象中的未定义值因此,我需要找到包含query
字符串中子字符串的searchSpace
对象中的每个键/值。例如,密钥是3
,value1: '123abc'
。它应该找到每个包含query = '3'
的键/值。 这是我的代码:使用“for in”循环和IndexOf()
for (let key in searchSpace) {
if (key.toLowerCase().indexOf(query.toLowerCase()) !== -1 ||
searchSpace[key].value1.toLowerCase().indexOf(query.toLowerCase()) !== -1 ||
searchSpace[key].value2.toLowerCase().indexOf(query.toLowerCase()) !== -1) {
// do something, not the case
}
}
它的工作原理。但我的对象应该能够包含undefined
或null
的value
。就像这样:
searchSpace['1'] = { value1: 'loremipsum', value2: '12345' };
searchSpace['2'] = { value2: 'ABCD' }; // here, value1 is undefined
searchSpace['3'] = { value1: '123abc', value2: 'ABCD' };
如何使我的代码忽略searchSpace
不定值当我申请IndeoOf()
或toLowerCase()
?
TY,完全忘了null和undefined是“falsy”:D – VELFR