【发布时间】:2014-06-08 03:30:25
【问题描述】:
在这里问是不得已的办法,我在这个错误上花了 50 多个小时,如果有人能帮我一把,我将不胜感激。
错误:“当前版本的 Javascript 不支持解构赋值”、“需要半列或换行符”。
目标:将 for 循环中的用户输入分配给变量,使用这些变量为对象数组的每个元素初始化对象属性。
function STUDENT(name, id, course, mark, sum)
{
this.studName = name;
this.studentID = id;
this.courses = course;
this.marks = mark; //Attempted new array and marks[courses][0]
this.studsum = sum;
}
var student = new Array(30);
for(i = 0; i < 30; i++)
{
var name1 = prompt("Enter Student Name:");
if (name1 !== "!!!")
{
var id1 = parseInt(prompt("input the students ID:", ""));
for (var l = 0; l < course.length; l++)
{
mark1[l] = parseFloat(validateMark(l));
sum1 += mark1[l];
coursesum[l] = mark1[l] + coursesum[l];
}
var student[i] = new STUDENT(name1, id1, course1, mark1, sum1);
/*ERROR IS HERE ^*/
}
else
i = 30; /*Breaks out of loop*/
}/* end of for loop*/
我尝试了很多不同的东西,但这是我代码的基础,所有其他功能都很好,每个变量的 console.log() 都可以正常工作。
提前谢谢你。
【问题讨论】:
-
没有
course数组。你也应该var你的循环变量。也应该是student[i]而不是var student[i]。
标签: javascript arrays oop object for-loop