코드는 다음과 같습니다.
<body>
<a href="javascript:;" id="test">hello</a>
</body>
<script type="text/javascript">
document.getElementById("test").addEventListener("click", function () {
test()
}, false)
function test() {
var postTypes = new Array('hello', 'there')
(function() { alert('hello there') })()
}
</script>
이것은 다음을 던질 것입니다.
"Uncaught TypeError : object is not a function"
익명 함수 호출 / 호출을 다른 괄호로 묶으면 경고가 실행되지만 여전히 오류가 발생합니다. "var postTypes"정의 뒤에 세미콜론을 넣으면 완전히 괜찮습니다.
나는 자바 스크립트가 세미콜론을 필요로하지 않는다고 믿게되었고, 그래서 내가 완전히 이해하지 못하는 함수 애플리케이션의 이상한 연관성 규칙이 있다고 추측하고 있습니다. 이 오류가 발생하는 이유는 무엇입니까?