首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >为什么我的拆分字符串只使用JavaScript多次输出?

为什么我的拆分字符串只使用JavaScript多次输出?
EN

Stack Overflow用户
提问于 2018-10-22 06:08:51
回答 3查看 175关注 0票数 0

在开始我的问题之前,我要说的是,我是JavaScript入门课程的软件工程初学者。我有一个关于JavaScript课程的作业的问题。

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

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

这是我的代码。

代码语言:javascript
复制
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);

有人能帮我吗?

EN

回答 3

Stack Overflow用户

发布于 2018-10-22 06:12:57

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

票数 1
EN

Stack Overflow用户

发布于 2018-10-22 06:13:03

您应该输出包含拆分部分的数组的i-th元素:使用nameAfterSplit[i]而不是nameAfterSplit

票数 1
EN

Stack Overflow用户

发布于 2018-10-22 06:14:17

仔细看看你打印的是什么。当你正确地split()你的字符串时,当你打印它时,你打印的不只是每一段,而是整个拆分字符串。当split返回一个数组时,您需要做的是在每次循环迭代中针对每个单独的元素。

代码语言:javascript
复制
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[i] + "<br />");
			}
		}
		nameSplit(fullName);

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52920347

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档