JavaScript Object-Oriented JavaScript Getters and Setters Creating Setter Methods

nside the major() setter method, set the student's major to a backing property "_major". If the student's level is Junio

Hello, I don't understand why my code isn't working , please help

creating_setters.js
class Student {
    constructor(gpa, credits){
        this.gpa = gpa;
        this.credits = credits;
    }

    stringGPA() {
        return this.gpa.toString();
    }

    get level() {
        if (this.credits > 90 ) {
            return 'Senior';
        } else if (this.credits > 60) {
            return 'Junior';
        } else if (this.credits > 30) {
            return 'Sophomore';
        } else {
            return 'Freshman';
        }
    }

  set major(major){
    this._major=major;
  };
set major(major){
    if(self.level === 'Senior' || self.level=== 'Junior'){
    this._major = major;
    } else {
      this._major = 'None';
    }
  };

var student = new Student(3.9, 60);

1 Answer

Steven Parker
Steven Parker
203,443 Points

There are two setter methods here ("set major(major){"), but there should only be one.