基础数组过滤逻辑失效排查:为何myResult返回空数组?
问题原因与解决方案
核心问题
你的代码中创建Set的逻辑存在错误:
keySetTest = new Set('B-L002');
当直接把字符串传入Set构造函数时,它会将字符串拆分为单个字符作为集合元素,最终keySetTest里的内容是{'B', '-', 'L', '0', '2'},而非你预期的{'B-L002'}。
而你在filter里判断的是dataRow[0](完整字符串'B-L002')是否存在于Set中,单个字符的集合自然匹配不到完整字符串,导致myResult为空数组。
修复方法
将字符串放入数组后再传给Set构造函数,这样整个字符串会作为单个元素存入集合:
keySetTest = new Set(['B-L002']);
修改后,filter逻辑就能正确匹配到dataRow[0] === 'B-L002'的元素,返回预期结果。
内容的提问来源于stack exchange,提问作者mortpiedra
相关产品推荐
相关产品推荐

