Это отличная функция для практики и обзора нескольких различных концепций.

Упражнение Type Ahead вращается вокруг прослушивания пользовательского ввода и фильтрации через массив и вывода любых городов или штатов (и населения), которые соответствуют пользовательскому вводу.

Это легкое освежение для вызовов выборки, если вы немного заржавели, но в основном мне нравится использование регулярных выражений, поскольку у меня не было много практики с этим. Флаги и форматирование могут быть немного сложными, но как только вы это сделаете, это будет очень полезно и намного более лаконично во многих отношениях.

На проверку

Если вы похожи на меня и не очень хорошо разбираетесь в регулярных выражениях (регулярных выражениях), вы можете заглянуть на страницу документов MDN, но, по общему признанию, это немного сложно разобрать.

Если вы, как и я, больше любите учиться на примерах, вы можете за 20 минут ознакомиться с подходом Web Dev Simplified к изучению регулярных выражений.

На заметку

В конце, когда Уэс хочет отформатировать число с помощью запятых (например, 100000 становится 100000), он просто копирует функцию за пределами экрана, чтобы обработать это.

function numberWithCommas(x) {
  return x.toString().replace(/\B(?=(\d{3})+(?!\d))/g, ‘,’);
}

тогда как я больше люблю включенный JS-метод toLocaleString. В этом случае вам нужно будет преобразовать строку в число, а затем обратно в строку, поэтому не самый логически элегантный, но синтаксически мне это нравится больше:

parseInt(number).toLocaleString(‘en-US’);

Вы можете опустить «en-US», если у вас есть форматирование английского языка в США, но я включил его как общее решение.