Fizz-Buzz問題

prototypeを汚染したい期です。

Number.prototype.FizzBuzz = function () {
    return !(this % 15) ? 'FizzBuzz' :
           !(this % 3)  ? 'Fizz' :
           !(this % 5)  ? 'Buzz' :
                          this;
}

var i=0, b=[];
while(i<100) b.push((++i).FizzBuzz());

alert(b.join(' '));
Array.prototype.FizzBuzz = function (n) {
    this.push(
        !(n % 15) ? 'FizzBuzz' :
        !(n % 3)  ? 'Fizz' :
        !(n % 5)  ? 'Buzz' :
                     n
    );
}

var i=0, b=[];
while(i<100) b.FizzBuzz(++i);

alert(b.join(' '));