-3
저는이 코드에서 start() 만 정의하면이 코드에서 모든 것이 작동하지만 time()을 선언하면 오류가 발생합니다 : " TypeError : start가 함수가 아닙니다. " 문제가 어디 있습니까 ?? `당신은 사용했습니다, 다음은 코드,Javascript, TypeError : "function"은 함수가 아닙니다
//start
function start(){
\t
\t //removes title and start boxes
\t var body=document.getElementsByTagName("body")[0];
\t var start_box=document.getElementById("start_box");
\t var title_box=document.getElementById("title_box");
\t body.removeChild(start_box);
\t body.removeChild(title_box);
\t
\t //creates stats box
\t var stats_box=document.createElement("div");
\t stats_box.id="stats_box";
\t var time=document.createElement("p");
\t time.id="time";
\t var points=document.createElement("p");
\t points.id="points";
\t stats_box.appendChild(points);
\t stats_box.appendChild(time);
\t body.appendChild(stats_box);
\t
\t //creates play box
\t var play_box=document.createElement("div");
\t play_box.id="play_box";
\t body.appendChild(play_box);
\t
}
//time
function time(){
\t var time=document.getElementById("time");
\t for(x=30,x>=0,x--){
\t \t time.innerHTML("Time:"+x);
\t }
}
<!DOCTYPE HTML> \t
<html>
\t <head>
\t \t <title>PICK 'EM ALL</title>
\t \t <link rel="stylesheet" href="pta.css" type="text/css">
\t \t <script src="pta.js" type="text/javascript"></script>
\t </head>
\t <body>
\t \t <div id="title_box">
\t \t \t <p id="title">PICK 'EM ALL</p>
\t \t </div>
\t \t <div id="start_box" onclick="start()">
\t \t \t <p id="start">START</p>
\t \t </div>
\t </body>
</html>
그것은 단지 오타의 세미콜론해야한다, 루프 함께 '대신';'에'; '를 사용하므로 스크립트 전체가 구문 분석되지 않고 정의 된 내용이 전혀 생성되지 않습니다. 'for (x = 30; x> 0; x -)'여기에는 다음과 같은 두 가지 중요한 교훈이 있습니다. 1. 웹 콘솔을 열면 무엇이 잘못되었는지를 알려줍니다. 2. 구문 오류로 인해 전체 스크립트가 폭파 될 수 있습니다. –
당신의 코드도 [* The Horror of Implicit Globals *] (http://blog.niftysnippets.org/2008/03/horror-of-implicit-globals.html)에 떨어집니다 : 변수를 선언하십시오 ('x' 예를 들어'time'에서). –
OP의 경우 Linting이 내장 된 좋은 편집기를 사용하는 것이 좋습니다. 그러면 이러한 오류가 즉시 발생합니다. – Keith