需要有关推进学校作业的建议

时间:2017-10-31 15:55:54

标签: javascript

你好stackoverflow用户,

我在高中时学习了javascript的基础知识,而且我在其中一项任务中遇到了一个多星期的问题。

我创建了一个“程序”/网站,您可以在其中输入两个变量名称和年龄。这些变量分为两个不同的数组。 AgeArray和NameArray。

我被要求列出15岁以下的所有学生:John 14,Harry 11等。

我的问题是我无法绕过它。如果我从AgeArray获得15岁以下的所有元素,我仍然会有名称充满的NameArray?

因此,为了解决这个问题,我试图获取每个小于15的元素的索引变量,然后从NameArray获取相同的元素变量。但肯定有一些更容易的方法来做到这一点?!?请注意,根据练习,我必须有这里提供的数组。

任何对正确方向的建议都非常感谢!Ty。

编辑代码。

var AgeArray = [];
var NameArray = [];
var empty = "";
var empty1 = "";
var i;

function addStudent() {
var ageFromPage = document.getelemenetbyid("age").value;
var nameFromPage = document.getelementbyid("name").value;

var age = Number(ageFromPage); //(not sure if this is needed, didnt make any 
difference when debugging)

nameArray.push(nameFromPage);
ageArray.push(age);

for (i = 0; i <= ageArray.length; i++) {
empty = empty + ageArray[i];
empty1 = empty1 + nameArray[i];
}
}
function students() {

//I was stuck here, but will try to move on with help already given. 
//Actually just tried it with the help given and it seems to have solved the 
//problem. CANT BELIEVE IT WAS THAT EASY :/
// - might consist typos - TY for your help! 

}

2 个答案:

答案 0 :(得分:1)

使用两个数组是一种非常奇怪的方法,一个像

这样的对象数组
extension MapVC : GMSMapViewDelegate {

    func mapView (_ mapView: GMSMapView, didEndDragging didEndDraggingMarker: GMSMarker) {

        print("Drag ended!")
        print("Update Marker data if stored somewhere.")

    }

}

会更有意义。但是如果你的赋值需要它......你可以使用数组索引来引用另一个数组中的元素:

&#13;
&#13;
[
    {name: 'John', age: 14},
    {name: 'Lucy', age: 11}
]
&#13;
&#13;
&#13;

答案 1 :(得分:0)

你有正确的想法。鉴于您处理输入的方式,您的数组具有相应的索引。因此,如果使用for循环遍历数组的长度,并找到年龄为&lt; 15,您可以将该索引与您的名称数组匹配。

for (i = 0; i < arrayLength; i++)
{
  if (ageArray[i] < 15) 
  {
    do something(nameArray[i]);
  }
}