valueOf() toString()
1203 단어 prototype
양자 가 병존 하 는 상황 에서 수치 연산 에서 valueOf 를 우선 호출 했 고 문자열 연산 에서 toString 을 우선 호출 했다.
<script type="text/javascript">
function Money(gold, silver, coin)
{
this.gold = gold;
this.silver = silver;
this.coin = coin;
}
Money.parse = function(value)
{
var coin = parseInt(value % 25);
var silver = parseInt(value / 25 % 20);
var gold = parseInt(value / 500);
return new Money(gold, silver, coin);
}
Money.prototype.valueOf = function()
{
return ((this.gold * 20) + this.silver) * 25 + this.coin;
}
Money.prototype.toString = function()
{
return this.gold + " ," + this.silver + " ," + this.coin + " ";
}
var money1 = new Money(5, 6, 1);
var money2 = new Money(2, 4, 6);
//money1 + money2 valueOf
var money3 = Money.parse(money1 + money2);
// toString
alert(money3);
</script>