忽略對象中的未定義值因此,我需要找到包含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