Я пытаюсь сопоставить первую часть британского почтового индекса с теми, которые я держал в файле JSON. Я делаю это в Vue.
На данный момент мне удалось сопоставить почтовый индекс, если в нем есть две совпадающие буквы, но некоторые британские почтовые индексы не начинаются с 2 букв, а некоторые просто имеют одну, и это то место, где происходит сбой.
Смотрите полный код
https://codesandbox.io/s/48ywww0zk4
Образец JSON
{
"id": 1,
"postcode": "AL",
"name": "St. Albans",
"zone": 3
},
{
"id": 2,
"postcode": "B",
"name": "Birmingham",
"zone": 2
},
{
"id": 3,
"postcode": "BA",
"name": "Bath",
"zone": 5
}
let postcodeZones = this.postcodeDetails.filter(
pc => pc.postcode
.toLowerCase()
.slice(0, 2)
.indexOf(this.selectPostcode.toLowerCase().slice(0, 2)) > -1
);
Может ли кто-нибудь помочь мне найти (например) «B», если я наберу B94 5RD, и «BA», если я наберу BA33HT?