[javascript] Fuse.js를 이용한 실시간 주식 정보 검색 기능 구현 방법

이번 포스트에서는 Fuse.js를 이용하여 실시간 주식 정보 검색 기능을 구현하는 방법에 대해 알아보겠습니다. Fuse.js는 JavaScript에서 사용할 수 있는 경량 검색 라이브러리로, 다양한 데이터 집합에서 효율적인 검색을 제공합니다.

Fuse.js 설치

먼저, Fuse.js를 사용하기 위해 패키지를 설치해야 합니다. npm을 사용하는 경우, 아래 명령을 실행하여 Fuse.js를 설치할 수 있습니다.

npm install fuse.js

Fuse.js를 사용한 주식 정보 검색 기능 구현

다음은 Fuse.js를 사용하여 주식 정보 검색 기능을 구현하는 예시 코드입니다.

const stockData = [
  { symbol: 'AAPL', name: 'Apple Inc.' },
  { symbol: 'GOOGL', name: 'Alphabet Inc.' },
  { symbol: 'MSFT', name: 'Microsoft Corporation' },
  { symbol: 'AMZN', name: 'Amazon.com, Inc.' },
  // ...기타 주식 정보 데이터
];

const fuseOptions = {
  keys: ['symbol', 'name'], // 검색할 필드 설정
  threshold: 0.3, // 검색 결과의 일치 정도 설정
};

const fuse = new Fuse(stockData, fuseOptions);

function searchStock(query) {
  const result = fuse.search(query);
  return result.map((item) => item.item);
}

// 검색 기능 테스트
console.log(searchStock('AAPL')); // { symbol: 'AAPL', name: 'Apple Inc.' }
console.log(searchStock('Microsoft')); // { symbol: 'MSFT', name: 'Microsoft Corporation' }

위 코드에서는 주식 정보를 stockData 배열로 초기화하고, Fuse.js의 옵션을 설정한 후 new Fuse()로 인스턴스를 생성합니다. searchStock() 함수를 호출하여 검색어에 따라 주식 정보를 검색합니다.

결론

Fuse.js를 이용하면 실시간 주식 정보 검색 기능을 간편하게 구현할 수 있습니다. Fuse.js의 다양한 옵션을 활용하면 검색 결과의 정확도를 높일 수 있으니, 프로젝트의 요구사항에 맞게 설정해보세요.

참고 문서: Fuse.js 공식 문서