私はJavaScriptの初心者なので、ヘルプやアドバイスをいただければ幸いです。
ここでの問題は、各ムービーオブジェクトの上映時間の値を保持するtimes []配列の項目間にスペースを追加する方法を見つけようとしていることです。コンマ( "、")で分割しようとしましたが、機能しません。 ( "pm")で分割してみたところ、うまくいきました。また、上映時間の値自体にスペースを追加する方法も見つけましたが、それを行うにはもっと良い方法があるはずだと思いました。何かご意見は?ありがとう!
window.onload = init;
function Movie(title, year, showtimes) {
this.title = title;
this.year = year;
this.showtimes = showtimes;
}
function init() {
var darkKnight = new Movie("The Dark Knight Rises", "2012", ["1pm,", "2pm,", "3pm,"]);
var takeThisWaltz = new Movie ("Take This Waltz", "2012", ["4pm", "5pm","6pm"]);
var watchmen = new Movie("Watchmen", "2009", ["7pm","8pm","9pm"]);
var movieList = [darkKnight, takeThisWaltz, watchmen]
for(var i = 0; i < movieList.length; i++) {
var theObj = movieList[i];
var times = [movieList[i].showtimes]
for(var j = 0; j < times.length; j++) {
var str = times[i];
}
makeResult(); }
function makeResult() {
var list = document.getElementById("movieList");
var li = document.createElement("li");
li.innerHTML = "title: " + movieList[i].title + " year: " + movieList[i].year + " showtimes: " + times[0].toString().split(",");
list.appendChild(li); }
}
array.join
関数は、オプションのdelimiter
パラメーターを取り、区切り文字で要素を区切ります。簡単な例:
var showtimes = ["1pm", "2pm", "3pm"];
var showtimesAsString = showtimes.join(', '); // gives "1pm, 2pm, 3pm"