IT/error

Uncaught RangeError: Invalid string length 오류

하요 2024. 11. 22. 10:27
반응형
Uncaught RangeError: Invalid string length

 

스크립트를 작성 중에 위와 같은 오류가 발생했다.

해당 오류는 자바스크립트에서 문자열의 길이가 허용된 최대한도를 초과했을 때 발생하는 문제입니다.

 

즉, 과도하게 String을 길게 나열을 한 것이다.

(주인장은 for문으로 너무 많이 돌림...)

원인은 다양하겠지만 결론적으로는 과도하게 긴 문자열을 만들었다는 게 문제이다.

 

이를 해결방법은 간단하게 문자열을 분열을 하면 된다.

 

추가적으로, 문자열을 반복적으로 연결을 할 때에는 "+" 연산자보다는 배열과 Array.join()을 사용하는 것이 성능이 더 좋다.

예를 들면 아래와 같다.

let parts = [];
for (let i = 0; i < 1000; i++) {
    parts.push("a");
}
let result = parts.join("");
반응형