首页 > 解决方案 > 如果 n 个字符串包含特定的输入字符并且仅将匹配的字符串列表数组存储在新数组中,如何传递条件语句?

问题描述

我无法解决问题:我想检查数组的“名称”字符串是否包含 searchInput 字符。如果我找到任何匹配的字符,则将数组的所有名称字符串的父对象存储在一个新数组中。

即使有匹配项,我的新数组有时也会异常显示为空。请检查我是否在逻辑或其他问题上做错了什么。

const search = document.querySelector('#search');
const ul = document.querySelector('.student-list');

function nameSearch(list){ 
   let newList = []; 
   const searchInput = search.value.toLowerCase();
   for(let i = 0; i < list.length; i++) { 
      let names = `${list[i].name.first.toLowerCase()} ${list[i].name.last.toLowerCase()}`;
      if(searchInput.length != 0 && names.includes(searchInput)){
         newList.push(list[i]);    
      }

标签: javascriptarraysstringlogic

解决方案


推荐阅读