我有一個對象數組。每個對象都是一個自治市,它的名稱,替代拼寫和識別號碼。如何使用sugar.js在對象中搜索數組?
var munis = [
{
name: 'St. Louis Hills',
alt: 'Saint Louis Hills',
nhdNum: 992
},
{
name: 'Mount Pleasant',
alt: 'Mt. Pleasant',
nhdNum: 1004
}
];
在我的應用程序中,用戶可以鍵入一個名稱。然後我用Sugar.js搜索該數組並返回它匹配他們輸入的內容,這樣的特定對象:
var theMatch = munis.find(function(el) {
return el.name === userInput || el.alt === userInput;
});
這個效果很好,但只允許我用一個規範的名稱和一個備用拼寫。我想有多個交替,就像這樣:
{
name: 'Mount Pleasant',
alt: ['Mt. Pleasant','Mt Pleasant'],
nhdNum: 1004
}
但我無法弄清楚如何適應糖的.find()來搜索這個結構。誰能幫忙?
我不知道sugar.js,但似乎.find()需要一個函數。我猜這個函數可以做任何事情,它不需要是一個具有布爾表達式的單個返回語句。因此,編寫一個for循環並遍歷列表。 –
有人在您的評論後不久就發佈了您的建議併發布了算法。修改後的版本適用於我。唉,這個人刪除了他們的答案,現在我不能接受它。 – Kirkman14