개인 프로젝트 개발을 크롬 환경에서 진행했고, 무사히 배포까지 완료했다.
하지만 배포 후 폰(맥 환경)으로 봐야지 ~ 하면서 열었는데...
텅 빈 흰 창이 나를 기다리고 있었다 🥺
검사 페이지를 열어보니 아래와 같은 문제가 발생했다.
SyntaxError: Invalid regular expression: invalid group specifier name
기능 구현을 위해 정규식을 사용했는데, 그 부분이 문제가 되는 모양이다.
앗 눈부셔
재석님이 에러 관련해서 도움을 주셨다...
IE에서 뜬 에러를 보고 아래 코드에 문제가 있다는 것을 알려주셨다.
사파리에서도 동일한 오류가 발생했다.
그리고 이유를 알게 되었다! (이것도 천재만재석님이 알려주심)
Lookbehind in JS regular expressions
The positive lookbehind ((?<= )) and negative lookbehind ((?<! )) zero-width assertions in JavaScript regular expressions can be used to ensure a pattern is preceded by another pattern.
정규표현식 Invalid regular expression 현상 글을 보고 이해할 수 있었다.
알고보니 맥 os에서 lookbehind 문법을 사용하지 않아서 에러가 발생하는 것이었다.
위 사진을 보면.. 사파리, ios 사파리는 전멸인 모습을 볼 수 있다.
그러니까 화면에 안뜨지..
https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Global_Objects/Array/toLocaleString
toLocaleString
은 각 나라의 표기 방식에 맞는 숫자/날짜를 표기하는 방법이다.
우리나라는 천 단위마다 반점을 찍어주므로, 가격 뒤에 toLocaleString('ko-KR')
을 붙여주고,
만들어 놓았던 함수를 삭제했더니 사파리에서 잘 작동했다 !