类型错误无法读取 属性 'push'

Type Error Cannot read property 'push'

** 如何修复:类型错误无法读取未定义的 属性 'push' **

您在 getStudens() 中有一个拼写错误(注意:此函数名称似乎缺少 'students' 中的 't')这是导致返回一个未定义的变量。由于 student 是未定义的,你会在调用它的任何函数时出错(例如 push()

undefined中没有'r'。

var students = storage.getItemSync('students');
if (typeof students==="underfined") {
    return [];
}
else students;

我怀疑您还需要将 else students; 更改为 return students; 以涵盖定义数组的情况。

这是相关代码的修改版本,应该可以使用。

function getStudents() {
    var students = storage.getItemSync('students');
    if (typeof students==="undefined") {
        return [];
    }
    return students;
}

function addStudents(studentId, studentName) {
    var students = getStudents();
    students.push({
                   id: studentId, 
                   fullname: studentName
    });
    storage.setItemSync('students', students);
}