[javascript] Fuse.js를 이용한 텍스트 검색 예제

Fuse.js는 JavaScript로 작성된 강력한 텍스트 검색 라이브러리입니다. 이 라이브러리를 사용하면 키워드를 기반으로 배열 내에서 텍스트를 검색할 수 있습니다. 이번 예제에서는 Fuse.js를 사용하여 배열 내에서 텍스트를 검색하는 방법을 알아보겠습니다.

Fuse.js 설치

Fuse.js를 사용하기 위해 먼저 Fuse.js를 설치해야 합니다. npm을 사용하여 설치할 수 있습니다. 아래의 명령어를 사용하여 Fuse.js를 설치하세요.

npm install fuse.js

예제 코드

Fuse.js를 사용하여 텍스트를 검색하는 예제 코드는 다음과 같습니다. 아래의 코드를 작성해보세요.

const Fuse = require('fuse.js');

// 검색 대상 배열
const data = [
    { name: 'John', age: 25, city: 'New York' },
    { name: 'Jane', age: 30, city: 'Tokyo' },
    { name: 'Bob', age: 35, city: 'Paris' },
    { name: 'Alice', age: 20, city: 'London' }
];

// Fuse.js 옵션 설정
const options = {
    keys: ['name', 'city'] // 검색할 키워드가 있는 속성 지정
};

// Fuse 인스턴스 생성
const fuse = new Fuse(data, options);

// 검색어
const searchQuery = 'John';

// 검색 실행
const result = fuse.search(searchQuery);

// 결과 출력
console.log(result);

위의 코드는 data 배열에서 namecity 속성을 기반으로 텍스트를 검색합니다. searchQuery 변수에 원하는 검색어를 입력하고, fuse.search()를 호출하여 검색을 실행합니다. 검색 결과는 result 변수에 저장되며, console.log()를 사용하여 결과를 출력합니다.

이제 위의 예제 코드를 실행해보세요. 검색어로 ‘John’을 입력하면, 매칭되는 결과가 출력될 것입니다.

결론

이 예제에서는 Fuse.js를 사용하여 JavaScript에서 텍스트 검색을 수행하는 방법을 알아보았습니다. Fuse.js는 강력한 검색 기능을 제공하므로, 복잡한 텍스트 검색 애플리케이션을 개발할 때 유용하게 사용할 수 있습니다. Fuse.js의 다양한 옵션을 통해 원하는 검색 결과를 얻을 수 있으니, 필요에 맞게 적절한 옵션을 설정하여 사용해보세요.