'use strict'
class A {
constructor() {
this._x = 73
}
get x() { return this._x }
}
let a = new A
console.log(a.x) // => 73
let x
// Магия...
console.log(x) // => 73
var x = () => (a.x); // x() => 73
var x = {valueOf: () => a.x};
console.log(x); // 73
// Здесь получилось 73 потому что вызвалось toString() -> valueOf()
// Это приведение можно вызывать явно оператором +