I have this snippet of code
function foo() {
console.log(this.bar);
}
var bar = "bar1";
var o2 = { bar: "bar2", foo: foo };
var o3 = { bar: "bar3", foo: foo };
foo(); // "bar1"
o2.foo(); // "bar2"
o3.foo(); // "bar3"
when run in browser it shows the output
bar1
bar2
bar3
but when run it with node it outputs
undefined
bar2
bar3
Can someone explain why am I getting different outputs?