Promise를 이용한 텍스트 검색 기능 구현
이번 글에서는 JavaScript의 Promise
를 활용하여 텍스트 검색 기능을 구현하는 방법을 알아보겠습니다.
문제 개요
주어진 텍스트에서 특정 단어를 검색하는 기능을 구현해야 합니다. 해당 단어가 텍스트에 존재하면 결과로 해당 단어가 몇 번 나타나는지를 반환하고, 존재하지 않으면 0을 반환해야 합니다.
구현 방법
아래는 텍스트 검색을 위한 searchText
함수의 예시 코드입니다.
function searchText(text, word) {
return new Promise((resolve, reject) => {
// 텍스트에서 단어 검색
const regex = new RegExp(word, 'gi');
const matches = text.match(regex);
if (matches) {
resolve(matches.length); // 검색된 단어의 개수 반환
} else {
resolve(0); // 검색된 단어 없음
}
});
}
위 코드에서는 Promise
생성자를 이용하여 비동기 작업을 수행합니다. 검색된 단어의 개수는 resolve
함수를 호출하여 반환하고, 검색된 단어가 존재하지 않을 경우에는 0을 반환합니다.
사용 예시
const text = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum tincidunt condimentum purus, eu mattis turpis consequat sit amet. Morbi fermentum massa nec mauris rutrum auctor.";
searchText(text, "consectetur")
.then(count => {
console.log(`검색된 단어의 개수: ${count}`);
})
.catch(error => {
console.error(error);
});
위 예시 코드에서는 주어진 텍스트에서 “consectetur”라는 단어를 검색하고, 검색된 단어의 개수를 출력합니다.
결론
이번 글에서는 JavaScript의 Promise
를 활용하여 텍스트 검색 기능을 구현하는 방법을 알아보았습니다. Promise
를 사용하면 비동기 작업을 보다 간단하게 처리할 수 있습니다. 텍스트 검색 외에도 Promise
는 다양한 비동기 작업을 처리하는 데 유용하게 사용될 수 있으니, 다양한 상황에서 활용해보시기 바랍니다.