Поиск соответствия символов в массиве js
Подскажите пожалуйста, как я могу найти соответствие символов в массиве phones.code?
Строка +3806 находится в массиве, а +3810 уже не находится в массиве.
var phones = [
{"country": "UA", "code": "+380"},
{"country": "RU", "code": "+7"},
{"country": "MD", "code": "+373"}
];
Ответы (1 шт):
Автор решения: Leonid
→ Ссылка
Так как знак "+" не должен встречаться где-то, кроме начала телефона, то предлагаю переработать код следующим образом:
var phones = [{
"country": "UA",
"code": "+380"
},
{
"country": "RU",
"code": "+7"
},
{
"country": "MD",
"code": "+373"
}
];
document.querySelector('input.phone').addEventListener('keyup', e =>{
document.querySelector('#country').textContent =
phones.find(el => e.target.value.includes(el.code))?.country ?? 'no';
})
<span id="country"></span>
<input type="text" class="phone">