Uncaught RangeError: Maximum call stack size exceeded
오늘 만났던 오류는
Uncaught RangeError: Maximum call stack size exceeded
at RegExp.[Symbol.replace] (<anonymous>)
at String.replace (native)
이런 에러였습니다.
너무나 슬픕니다. 왜 이런 오류들이 뜨는지에 관련해서 이유를 찾아보니,
자바스크립트의 함수의 재귀호출로 인해 스택영역의 사이즈가 오바했단 의미였습니다.
"그럼 대체 왜 자바스크립트의 호출이 재귀로 여러번 혹은 무한 루프가 돌았을까?" 라고 생각해보고, 마우스 우클릭 - 소스 보기를 눌러서 소스코드를 확인해보았습니다.
위 경우에는
<head> a source code </head>
<body></body>
이렇게 태그가 마치고 난 다음 다시
<head>b source code </head>
<body></body>
이렇게 시작하여 헤드 태그가 중복되어 나열되어 있었습니다.
따라서 현 사이트에 알맞게 하나의 태그만 존재하게끔 제거 하고 나니,
무한 재귀 호출따위는 사라졌습니다.
Uncaught RangeError: Maximum call stack size exceeded 의 경우에는 무한으로 함수가 호출이 된다는 의미이므로,
현재 같은 오류가 발생했다면, 어떤 함수가 국소적으로 자꾸 호출되는지 검사해야하며, 동시에 필자처럼 태그들이 정상적으로 선언되어 있는지
확인해봐야합니다.
'web > 오류정리' 카테고리의 다른 글
Before start of result set 에러 (0) | 2017.11.28 |
---|---|
[이클립스]illegal operation on empty result set mysql 해결방법 (0) | 2017.11.20 |
input disabled css ie8 (0) | 2017.06.01 |
인스타그램 샌드박스 모드 -웹사이트 연동 (0) | 2017.05.29 |
Cannot create JDBC driver of class '' for connect URL 'null' (0) | 2017.04.01 |