[javascript] Fuse.js를 이용한 배열 검색 예제
const books = [
  { title: "자바스크립트 완벽 가이드", author: "데이비드 플래너한" },
  { title: "자바스크립트와 JSON", author: "타니타 유키" },
  { title: "실용 주의 프로그래머", author: "앤드류 헌트" },
  { title: "자바스크립트 코딩의 기술", author: "매리포포레스, 데이비드 플래너한" }
];

const options = {
  threshold: 0.2,
  keys: ["title", "author"]
};

const fuse = new Fuse(books, options);
const result = fuse.search("자바스크립트");

console.log(result);

이 예제에서는 books라는 배열을 생성하고, 각 요소는 titleauthor를 가지도록 설정했습니다. Fuse.js를 초기화 할 때, thresholdkeys를 옵션으로 전달합니다. threshold는 검색 결과의 정확도를 조절하는 값입니다. 0에 가까울수록 정확하게 일치하는 결과를 반환하지만, 1에 가까울수록 유사한 결과도 반환됩니다. keys는 검색에 사용될 속성을 설정하는 역할을 합니다.

new Fuse(books, options)를 통해 Fuse 객체를 생성하고, search() 함수를 통해 특정 키워드를 검색합니다. 검색 결과는 result 변수에 저장되며, 콘솔에 출력됩니다.

이 예제를 실행하면 “자바스크립트”라는 키워드와 일치하는 결과만 출력됩니다. 검색 결과의 정확도는 threshold 값과 keys에 설정한 속성에 따라 달라집니다.

Fuse.js는 다양한 검색 옵션과 기능을 제공하여 배열에서 텍스트를 검색하는 작업을 더욱 편리하게 만들어줍니다. 자세한 사용법은 Fuse.js 공식 문서에서 확인할 수 있습니다.