So I have a question about this and just having normal variables in classes.
Normally we do something like this:
class Thingy {
  constructor(thing) {
    this.id = thing
  }
  printID() {
    console.log(this.id)
  }
}
let newthingy = new Thingy("ID1")
let newthingy2 = new Thingy("ID2")
newthingy.printID()
newthingy2.printID()
Which works just fine, however something like this will not:
class Thingy {
  constructor(thing) {
    let id = thing
  }
  printID() {
    console.log(id)
  }
}
let newthingy = new Thingy("ID1")
let newthingy2 = new Thingy("ID2")
newthingy.printID()
newthingy2.printID()
So I understand that newthingy will have no idea what id is, so won't it just look up the prototype chain back at the original class prototype? I realize it probably wouldn't get the right id but how come we get a id not defined error, should it attempt to look up the prototype chain first?
 
     
     
     
    