let num = 42069; // a variable with prmitive number value
const unit = new NumUnit({initialValue: 42069});
// initialValue is optional, NumUnit has 0 as default value
num === unit.value() // true
num.toString() // '42069'
numUnit.toString() // '42069'
num.toLocaleString() // '42,069' (in an 'en' locale)
numUnit.toLocaleString() // '42,069' (in an 'en' locale)
numUnit + 1 // 42070 // this doesn't change the Unit's value
numUnit + 'XX' // '42069XX' // this doesn't change the Unit's value
typeof num === 'number' // true
typeof unit === 'object' // true
typeof unit.value() === 'number' // true
console.log(num) // logs 7
console.log(unit.value()) // logs 7
unit.subscribe(value => console.log(value)) // logs 7, will log future values