JavaScript - 查詢與SQL查詢中類似的匹配值的鍵


假設我們有一個這樣的物件:

const obj = {"100":"Jaipur","101":"Delhi","102":"Raipur","104":"Goa"};

我們需要編寫一個JavaScript函式,該函式將一個這樣的物件作為第一個引數,並將搜尋查詢詞作為第二個引數。然後,我們的函式應該返回所有值包含提供的搜尋詞的鍵值對。

我們將簡單地遍歷物件,在遍歷過程中構建結果物件(如果它滿足條件),最後返回該物件。

示例

程式碼如下:

const obj = {
   "100":"Jaipur",
   "101":"Delhi",
   "102":"Raipur",
   "104":"Goa"
};
const findByQuery = (obj, query) => {
   const keys = Object.keys(obj);
   const res = {};
   keys.forEach(key => {
      // case insensitive search
      if(obj[key].toLowerCase().includes(query.toLowerCase())){
         res[key] = obj[key]
      };
   });
   return res;
};
console.log(findByQuery(obj, 'Pur'));

輸出

控制檯輸出如下:

{ '100': 'Jaipur', '102': 'Raipur' }

更新於:2020年11月21日

332 次瀏覽

啟動你的職業生涯

完成課程獲得認證

開始學習
廣告
© . All rights reserved.