ES6 - Use getters and setters to Control Access to an Object

Tell us what’s happening:

I have created the getter and setter methods in the class but an error keeps arising that I don’t understand:

  • When instantiated with a Fahrenheit value, Thermostat should set the correct temperature.

  • Failed:A getter should be defined.

  • Failed:A setter should be defined.

Your code so far

class Thermostat {
constructor(fahrenheit) {
this._temperatureF = fahrenheit; // Temperature in Fahrenheit
}

// Getter for temperature in Celsius
get temperatureC() {
return (5 / 9) * (this._temperatureF - 32);
}

// Setter for temperature in Celsius
set temperatureC(celsius) {
this._temperatureF = (celsius * 9) / 5 + 32;
}
}

// Only change code below this line
class Thermostat {
  constructor(fahrenheit) {
    this._temperatureF = fahrenheit; // Temperature in Fahrenheit
  }

  // Getter for temperature in Celsius
   get getter() {
  //   return (5 / 9) * (this._temperatureF - 32);
   }

  // // Setter for temperature in Celsius
  // set temperatureC(celsius) {
  //   this._temperatureF = (celsius * 9) / 5 + 32;
  // }
}
// Only change code above this line

const thermos = new Thermostat(76); // Setting in Fahrenheit scale
let temp = thermos.temperature; // 24.44 in Celsius
thermos.temperature = 26;
temp = thermos.temperature; // 26 in Celsius

Your browser information:

User Agent is: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/122.0.0.0 Safari/537.36

Challenge Information:

ES6 - Use getters and setters to Control Access to an Object

hello and welcome to fcc forum :slight_smile:

  • incorrect “getter” and “setter” name
  • look what “temp” is accessing from “thermos” instance, use that instead

things to be aware of

  • “getter” and “setter” needs to be same name with “get” and “set” preceding them

happy coding :slight_smile:

This topic was automatically closed 182 days after the last reply. New replies are no longer allowed.