Javascript Uncaught SyntaxError missing ) after argument list
원인
Uncaught SyntaxError missing ) after argument list
Single Quotes('
) 또는 Double Quotes("
) 를 를 자바스크립는 구분자를 사용하기 때문에
argument 넘겨주다가 argument 안에 구분자로 사용하는 '
또는 "
가 들어있어서 발생
해결방법
백슬래쉬 \
를 앞에 붙여주세요
구분자로 '
를 사용하면 \'
이렇게
구분자로 "
를 사용하면 \"
이렇게
1 | let singleQuotes = 'my string with "double quotes" and \'single quotes\''; |
그래도 안되면
encoding 하세요
URI encoding 을 활용하던지 뭔가 다른 것으로 바꾸고
활용할 때 decoding 하는 방법도 사용 가능합니다
사용한 사례
Hexo 로 블로그를 만들어서 사용하는 와중에
Hexo 의 Tagplugin 을 사용하게 되면 Tag 마다 규정되어 있는 규칙이 있고
내부에서 특수문자를 Replace 해버리는 경우도 많음
버튼 Tag 에 자바스크립트 구분을 효출하는 onClick 이벤트를 넣으려는데
함수를 뜯어보니 ,
와
로 규칙을 정해놔서
규칙을 피하려고 \
와 encoding 을 활용함
javascript 함수에서는 decoding 해서 결국 적용해서 사용하고는 있습니다.