* fix: restructure certifications guide articles * fix: added 3 dashes line before prob expl * fix: added 3 dashes line before hints * fix: added 3 dashes line before solutions
966 B
966 B
title
title |
---|
Use Closure to Protect Properties Within an Object from Being Modified Externally |
Use Closure to Protect Properties Within an Object from Being Modified Externally
Problem Explanation
Just like in the example given, rather than declaring the weight
variable with the this
keyword, the let
keyword must be used to declare it as a private variable. This way it can only be accessed inside the Bird
function. The getWeight
method must then be added inside the Bird
function to access the weight
variable.
Solutions
Solution 1 (Click to Show/Hide)
function Bird() {
let weight = 15;
this.getWeight = function() {
return weight;
};
}
Solution 1 (Click to Show/Hide)
In ES6 syntax we can make the function a bit less verbose:
function Bird() {
let weight = 15;
this.getWeight = () => weight;
}