2010-12-08 13 views
3
var rooms = { 
bedroom: { 
    info: "A dusty bed lies sideways in the midle of the room"; 

    north: function () { 
     //this function returns an error 
    } 
} 
}; 
이 예기치 않은 식별자

간단한 자바 스크립트, 함수

반환 이유를 해결하지 못할

- 편집 덕분에 좋은 부분은 그가

var myObject = { 
    value: 0; 
    increment: function (inc) { 
     this.value += typeof inc === 'number' ? inc : 1; 
    } 
}; 
을 가지고 자바 스크립트에 또 다른 질문

이 내가하는 일과 다른 점은 무엇입니까?

+0

@fxmile - 책의 실수처럼 보입니다. 28 페이지에 있습니까 (또는 가까이에 있습니까?)? 유사한 내용이 해당 페이지의 [책에 대한 에라타] (http://oreilly.com/catalog/errata.csp?isbn=9780596517748)에 나와 있습니다. – user113716

답변

5

;이 아닌 키와 값을 구분할 때 객체 리터럴 내에 ,을 사용해야합니다.

var o = { name: 'john', age: 13 } 
2
the room"; 

,하지 ;이 있어야합니다.

2

두 번째 질문에 답하기 위해 책에 오타가있는 것 같습니다.

잘못된 예는 다음과 같습니다

var myObject = { 
    value: 0; 
    increment: function (inc) { 
     this.value += typeof inc === 'number' ? inc : 1; 
    } 
}; 

올바른 예는 다음과 같습니다

var myObject = { 
    value: 0, 
    increment: function (inc) { 
     this.value += typeof inc === 'number' ? inc : 1; 
    } 
}; 

주 라인 value: 0,에 쉼표.

다른 언급했듯이 개체 리터럴에는 쉼표를 사용해야합니다 (세미콜론 대신).