为什么仅使用JavaScript多次输出拆分字符串?

时间:2018-10-21 22:08:51

标签: javascript string function split document.write

通过说我是JavaScript入门课程中的软件工程初学者来开始我的问题。我在JavaScript课程作业中遇到问题。

这是任务,“创建一个名为nameSplit.html的文件,该文件使用一个单一的hint()调用从用户那里获取全名-名,中间名和姓。然后,将输入拆分为一个数组,使用循环在一个单独的行上输出每个名称。要获得完整的信誉,您必须使用循环而不是将数组重新连接回字符串。”

我的问题是,当我将拆分字符串写入页面时,它将拆分字符串在不同的行上多次写入,这不是我想要的。我想要的是将字符串分开,并且每个部分都放在单独的行上。

这是我的代码。

var fullName = prompt("Please enter your full name: first, middle (if you have one), and last name.", "Full Middle Last");

function nameSplit(name) {
  var nameAfterSplit = name.split(" ");

  for (i = 0; i < nameAfterSplit.length; i++) {
    document.write(nameAfterSplit + "<br />");
  }
}
nameSplit(fullName);

有人可以帮我吗?

3 个答案:

答案 0 :(得分:1)

String.split生成一个数组,然后在循环内打印整个数组。您必须使用索引[i]选择特定的数组元素。 改成: document.write(nameAfterSplit[i] + "<br />");

答案 1 :(得分:1)

您应该输出包含拆分部分的数组的第i个元素:使用nameAfterSplit[i]代替nameAfterSplit

答案 2 :(得分:1)

仔细查看您要打印的内容。正确split()字符串时,打印时不仅要打印每个段,还要打印整个分割字符串。当split返回数组时,您需要做的是针对每次循环迭代中的每个单独元素。

...
body:  _.pick(hashtagData , elasticSearchFields ),
...