JavaScript Object-Oriented JavaScript Getters and Setters Creating Getter Methods

Madeline Yao
Madeline Yao
Full Stack JavaScript Techdegree Student 9,610 Points

I do not Understand What is Wrong with My Code

Hello everyone, I just finished the challenge and I found out the result says "Invalid left-hand side assignment". I wonder what it truly means and how I should fix the bug behind it. Could anyone please explain about it? Thank you!

creating_getters.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>=61 && this.credits=<90){
         return 'Junior';
       } else if(this.credits<=60 && this.credits>=31){
         return 'Sophomore'; 
       } else {
         return 'Freshman';
       }
    }
}

const student = new Student(3.9);

1 Answer

andren
andren
28,366 Points

You just have a typo in your first else if statement:

else if(this.credits>=61 && this.credits=<90){

You have written =< instead of <= in your second condition. That is where the error comes from as the order of those symbols matter. If you fix that then your code should work fine.