Javascript 如何在数组项之间添加空格javascript

声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow 原文地址: http://stackoverflow.com/questions/13939573/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me): StackOverFlow

提示:将鼠标放在中文语句上可以显示对应的英文。显示中英文
时间:2020-08-24 15:11:06  来源:igfitidea点击:

how to add spaces between array items javascript

javascriptarrayslistsplittostring

提问by user1876829

I am a beginner at javascript so I appreciate any help/advice given.

我是 javascript 的初学者,所以我感谢您提供的任何帮助/建议。

My issue here is that I'm trying to figure out how to add space between items in the times[] array which holds the values for showtimes for each movie object. I tried to split at the comma (",") but that isn't working. When I tried splitting at ("pm") that worked. I also figured out a way to add space in the showtimes values themselves, but I thought that there must be a better way to go about it. Any thoughts? thanks!

我的问题是我试图弄清楚如何在 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); }


 }

回答by jbabey

the array.joinfunction takes an optional delimiterparameter which will seperate the elements by the delimiter. A simple example:

array.join函数采用一个可选delimiter参数,该参数将通过分隔符分隔元素。一个简单的例子:

var showtimes = ["1pm", "2pm", "3pm"];
var showtimesAsString = showtimes.join(', '); // gives "1pm, 2pm, 3pm"