javascript - 为什么当我尝试将字符串添加到我的数组位置时不起作用
问题描述
我还在学习 JavaScript,现在我在数组章节中,我正在做这个项目我必须向用户询问 5 个名称并存储我的数组,然后必须按数组中的位置对名称进行排序,所以我可以在奇数和偶数中分开,然后我必须在赔率中添加一个姓氏,并在偶数中添加不同的姓氏,但是那部分没有任何帮助...谢谢
var numberfirstNames = 5;
var userMessage = " Please enter a first Name" ;
var secondArray = [];
var odd2 = [];
var even2 = [];
for (var i = 0; i < numberfirstNames; i++) // loop 5 times LOOL ASKING FOR "5" FIRST NAMES>> STORING IN NAMES
{
secondArray[i] = getFirstname();
window.alert("second " + secondArray[i] );
}
for (var i = 0; i < secondArray.length; i++) {
if(i % 2 === 0) // index is even
{
even2.push(secondArray[i]);
for ( var i=0 ; i<even2.length; i++)
even2[i]+=" Chavez"
}
else
{
odd2.push(secondArray[i]);
for ( var i=0 ; i<odd2.length; i++)
odd2[i]+=" McCain"
}
}
document.write(" \n all the names: "+ secondArray+'<br>');
document.write(" \n even names: "+ even2+'<br>');
document.write(" \n odd names: "+ odd2+'<br>');
解决方案
您无需再次循环添加特定的姓氏。您可以在将其插入数组时添加它,如下所示。
var numberfirstNames = 5;
var userMessage = " Please enter a first Name";
var secondArray = [];
var odd2 = [];
var even2 = [];
// loop 5 times LOOP ASKING FOR "5" FIRST NAMES >> STORING IN NAMES
for (var i = 0; i < numberfirstNames; i++) {
secondArray[i] = getFirstname();
window.alert("second " + secondArray[i]);
if (i % 2 === 0) {
even2.push(secondArray[i] + " Chavez");
} else {
odd2.push(secondArray[i] + " McCain");
}
}
document.write(" \n all the names: " + secondArray.join(",") + '<br>');
document.write(" \n even names: " + even2.join(",") + '<br>');
document.write(" \n odd names: " + odd2.join(",") + '<br>');
推荐阅读
- wix - 自定义操作返回错误时中断安装
- android - 除非断点,否则通知不会更新
- jquery - 如何根据项目点击更改弹出图像
- python - IDLE 找不到 PyQt5 安装
- asp.net-mvc-5 - 在生产服务器上禁用 asp.net(MVC) 应用程序的 java-script 调试
- javascript - 转义的反斜杠在字符串中显示为“\\”
- excel - 更新单元格时如何在 Excel 中捕获单元格值
- java - Java 与 Docu Sign 的集成
- symfony - Phpunit 错误:如果 BrowserKit 组件不可用,则无法创建用于功能测试的客户端
- mikrotik - Mikrotik PPPOE 路由