0

JavaScript を使用して、オブジェクトのデータを表形式で出力したいと考えています。私が書いたコードは何も表示しません。ここで何が間違っているのか教えてください。

これが私が書いたコードです-

function Movie(id,movieName)
{
    this.id = id;
    this.movieName = movieName;
}

function MoviesWatched()
{
    this.movies = new Array();
}

MoviesWatched.prototype.addMovie = function(id,name)
{
    this.movies[id]=new Movie(id,name);
}
MoviesWatched.prototype.getTable = function()
{
    var movie;
    var table="<table border=1>";
    for(movie in this.movies)
    {
        table += "<tr><td>";
        table += movies[movie].id;
        table += "</td><td>";
        table += movies[movie].name;
        table += "</td></tr>";
    }
table += "</table>";
return table;
}

var myList=new MoviesWatched();

myList.addMovie(1,"Inception");
myList.addMovie(2,"Red");

document.write(myList.getTable());
4

1 に答える 1

0

getTable 関数では、に変更moviesしてthis.movies変更nameする必要がありますmovieName

var movie;
var table="<table border=1>";
for(movie in this.movies)
{
    table += "<tr><td>";
    table += this.movies[movie].id;
    table += "</td><td>";
    table += this.movies[movie].movieName;
    table += "</td></tr>";
}

http://jsfiddle.net/fenderistic/9Gzdv/1/

于 2013-07-24T17:24:10.873 に答える