Truncate String
Truncate String - Explanation
Problem Summary
Write a function that truncates a string to a given length and adds "..." if truncated.
Go to Problem →Detailed Explanation
이 문제는 **조건부 문자열 처리**와 **텍스트 말줄임** 패턴을 학습합니다. UI에서 자주 사용되는 기능입니다. **알고리즘 동작** 1. 문자열 길이가 maxLength 이하면 그대로 반환 2. 그렇지 않으면 maxLength까지 자르고 "..." 추가 **"Hello World", maxLength=5 처리** - "Hello World".length (11) > 5 → 자르기 필요 - slice(0, 5) → "Hello" - "Hello" + "..." → "Hello..." **slice(0, maxLength)의 특성** - 시작 인덱스 0부터 maxLength 직전까지 추출 - maxLength가 문자열 길이보다 크면 전체 문자열 반환 **경계 조건** - 길이가 정확히 maxLength면 자르지 않음 (<=) - 길이가 더 짧으면 그대로 반환 **실용적 활용** - 긴 제목 표시 - 미리보기 텍스트 - 테이블 셀의 텍스트 오버플로우 **CSS와의 비교** CSS의 text-overflow: ellipsis도 비슷한 기능을 하지만, JavaScript로 구현하면 더 정밀한 제어가 가능합니다.
Solution Code
function truncate(str, maxLength) {
if (str.length <= maxLength) return str;
return str.slice(0, maxLength) + '...';
}Key Concepts from This Problem
Common Mistakes
Hints
Complexity Analysis
Time Complexity
O(n)
Grows linearly with input size
Space Complexity
O(n)
Uses memory proportional to input size