2014-10-04 5 views
-1

그래, 문제가 해결되는 데 아주 기본적인 구문 오류가 있습니다. 분명히 나는 ​​해결할 수없는 코드 아카데미 수업에서 매우 기본적이고 중요한 것을 놓쳤다. 나는 아래 코드를 게시 할 것이다. 내가 뭘하려고하는지 분명히해야합니다.자바 스크립트, 예기치 않은 토큰 {

오류 = "구문 오류 : 예기치 않은 토큰 {"

목표, 내 자신의 코드가있는 경우/다른, 루프에 대한 통합 및 기능을 작성합니다. 지적

var data = ["love", "peace", "anger", "war"] 

for (i = 0; i < data.length; i++){ 
    if (i <=2){ 
    console.log("life is" + " " +data[i]); 
    } 
    else if (i <=4){ 
    console.log("Strife is" + " " + data[i]); 
    } 
    else (i = 5){ 
    console.log("That's all for now"); 
    } 
} 
+5

다른 조건이 적용되지 않습니다. '(i = 5)'를 제거하십시오 또한'='은 할당이고'=='는 체크입니다 – karthikr

+0

여러 조건을 가진/else가 switch 문 사용을 고려한다면. – saj

+0

@saj 스위치는 이러한 유형의 조건에는 적합하지 않습니다. – Boann

답변

2

문제, else하지이/다른-경우 조건문이 실패 할 경우 모든 다른이 해당 때 다른 사람의 몸이 실행 될 때 의미가 조건을 거쳐야한다는 것입니다.

따라서 자바 스크립트 (필요하지 중괄호 주위/IF 다른-시체)하도록 파싱된다

else Statement 

을보다 구체적으로는 잘못된 { 뒤에 ExpressionStatement, (i = 5)로 파싱 시작한다. 그것은 다음과 같은 이유로 잘못된 것은 잘못되었습니다

i = 5 { } 

문은 세미콜론으로 구분해야합니다 - 명시 적으로 또는 automatic semicolon insertion를 통해. 전자는 완료되지 않았고 후자는 주어진 코드에 적용되지 않습니다.

+0

네, karthikr은 올바른 방향으로 나를 지적 할 수있었습니다. 그 후 코딩 오류를 해결할 수있었습니다. 내 연구는 도움이되지 못했습니다. – user285036

관련 문제