in this code below:
var a = 1;
var boat = { a:2,
innerBoat: {a:3,
print(){console.log(a);},
},
In javascript, an object
really is nothing more than a collection of data, like a dictionary in many other languages.
var boat = new Object();
just creates an empty object, as if you did var boat = {};
If you're looking for something more like , you may try using ES6 classes
var a = 0
class Boat {
constructor() {
this.a = 1;
}
print() {
console.log(this.a);
}
}
var boat = new Boat()
boat.print(); //output: 2