I don't know how to solve the following JavaScript problem:
function A() {
    var numbers = [];
    this.addNumber = function(number) {
        numbers.push(number);
    }
    this.getNumbers = function() {
        return numbers;
    }
}
A.prototype.alertNumbers = function() {
    var numbers = this.getNumbers();
    var length = numbers.length;
    var number;
    var numbersString = "";
    for (var i = 0; i < length; i++) {
        number = numbers[i];
        numbersString += " " + number;
    }
    alert(numbersString);
}
B.prototype = new A();
function B() {
    this.addNumber(1);
    this.addNumber(2);
}
var b = new B();
b.alertNumbers();
var otherB = new B();
otherB.alertNumbers();
The working code is here: http://jsfiddle.net/pFxse/
I'm expecting that otherB.alertNumbers(); also shows "1 2" and not "1 2 1 2".
Thanks