2017-02-06 3 views
1

궁금한 점은 맨 아래에 표시된 것과 같이 객체를 채워서 배열을 선언하는 것이 왜 잘못 되었습니까? 그리고 푸시를하는 가장 좋은 방법은 무엇입니까? 또한 var array = []을 수행하는 것과 "new"키워드를 사용하여 선언하는 것의 차이점은 무엇입니까? 나는 console.log (moonlight.rating)를하려고하는데 아무 것도 나타나지 않는다. 내가 뭘 잘못하고 있는지 확신 할 수 없다.객체 배열에 대한 자바 스크립트

function Movie(title, rating, hasWatched) 
{ 
this.title=title; 
this.rating=rating; 
this.hasWatched=hasWatched; 
} 

var la_la_land=Movie("La La Land", 8.6, true); 
var moonlight=Movie("Moonlight", 8.1, false); 
var fifty_shades=Movie("Fifty Shades Darker", -1, false); 

var arrays=[la_la_land, moonlight, fifty_shades]; 
+2

그것은 잘못이 아니다 - 그것은 단지 배열을 채울 수있는 방법 중 하나입니다 - 왜 당신은 잘못 생각하십니까? – tymeJV

+0

어쩌면 그게 문제가 아니 었 ... 나는 console.log (moonlight.rating)를하려고하고 있는데 그것은 나타나지 않을 것이다. –

+1

음, 그건 당신의'Movie' 클래스에 달려 있습니다 ... – Cristy

답변

5

이것은 인스턴스화 배열과는 아무런 관련이 없습니다. 당신은 Movie 생성자의 new 키워드를 사용해야합니다 : 당신이 그런 식으로 그것을 할 수 있도록

var la_la_land= new Movie("La La Land", 8.6, true); 
var moonlight= new Movie("Moonlight", 8.1, false); 
var fifty_shades= new Movie("Fifty Shades Darker", -1, false); 
+0

오 하하 : ') –