Hoping somebody could please explain this to me- why can I call the second function from the first without error in the first 2 examples, but the third example errors out.
I can write a module like so:
function main () {
const double = doubleThis(5)
console.log(double);
}
function doubleThis(num) {
let answer = num*2;
return answer;
}
or like this:
module.exports = {
run: function(){
const double = doubleThis(5);
console.log(double);
}
}
function doubleThis(num){
let answer = num*2
return answer;
}
However, something like this is not allowed:
module.exports = {
run: function(){
const double = doubleThis(5);
console.log(double);
},
doubleThis: function(num){
let answer = num*2;
return answer;
}
}
Thanks, this.doubleThis(5) works fine- embarrassing question but maybe somebody else might wonder same thing. I'm familiar with usage of this in prototypes but apparently not familiar enough with how this applies everywhere else... will review hoisting. Thanks again.