我有这个功能

    function getStudents() {
                    var students = [];
                    students[0] = {name: "Anna", mark: 65, sex: "female"};
                    students[1] = {name: "James", mark:33, sex: "male"};
                    students[2] = {name: "William", mark: 87, sex: "male"};
                    students[3] = {name: "Jane", mark: 72, sex: "female"};
                    students[4] = {name: "Rikki", mark: 60, sex: "male"};
                    students[5] = {name: "Angela", mark: 58, sex: "female"};
            }


然后在体内,我尝试这样做:

        var students = getStudents();

        var referrals = ["James", "Angela"];
                for(var i = 0; i < students.length; i++){
        var pTag ="<p>";


但是,当我尝试遍历循环时,它告诉我它不能执行未定义变量的.length,但是我想我已经通过调用函数并将其分配给变量来定义它了?

最佳答案

更改此代码的功能。问题是您没有返回变量student,并且当您超出范围时该变量不再存在。使用return可以在调用函数时将其分配给变量。

function getStudents() {
                var students = [];
                students[0] = {name: "Anna", mark: 65, sex: "female"};
                students[1] = {name: "James", mark:33, sex: "male"};
                students[2] = {name: "William", mark: 87, sex: "male"};
                students[3] = {name: "Jane", mark: 72, sex: "female"};
                students[4] = {name: "Rikki", mark: 60, sex: "male"};
                students[5] = {name: "Angela", mark: 58, sex: "female"};
                return students;
}

10-04 22:08
查看更多