Есть два способа сделать это просто, о которых я мог подумать: .find()
и .filter()
.find()
вернут вам первое совпадение и в виде строки
.filter()
вернет вам все совпадения и в виде массива
Они оба работают с одним и тем же стилем кода, вы просто меняете имя метода
arr.filter(item => item === strInput)
|arr.find(item => item === strInput
Немного в стороне, есть несколько вещей, которые можно поменять местами, чтобы получить эти сладкие сладкие пирожные.
let arr = [];
for ( i in data.cards) {
let jsonValue = data.cards[i];
let name = jsonValue.name;
arr.push(name);
}
Вместо этого можно написать , используяфункция карты
let arr = data.cards.map((card) => card.name);
.
Кроме того, вам не нужно делать '"' + myInput + '"';
, чтобы убедиться, что что-то является строкой, что вы можете пытатьсяделать там - вы можете просто использовать myInput.toString()
- конечно, ваши данные могут иметь имена, включая кавычки, но на случай, если это ошибка, я подумал, что укажу на это