js two_way data binding & overwrite puts method