Jak sugeruje @iwan9449, operator + w JS jest przeciążony i wykonuje dwie operacje równocześnie: w zależności od tego z jakimi zmiennymi go wywołamy.
Gdy dodajemy do siebie dwie zmienne i jedna z nich jest tekstem, to wtedy zawsze ostatecznie otrzymamy tekst:
2 + '0'; //'20'
Każdy input od usera jest traktowany jako string, więc dodanie do niego 2 powoduje powstanie ciągu podobnego do naszej nieszczęśliwej 20. Należy go przekonwertować na liczbę:
var liczbaA = parseInt(prompt('Podaj liczbę A'), 10);
parseInt bierze 2 parametry: 1. to zmienna, którą chcemy przerobić na liczbę, 2. to podstawa systemu liczbowego (chcemy liczbę dziesiętną, więc wstawiamy 10; jak wstawisz 2 to przerobi na dwójkowy, 8 - ósemkowy itd.).
Z operatorem - tego problemu nie ma, bo służy tylko i wyłącznie do odejmowania.
I jeszcze jedna uwaga: zmienne ZAWSZE deklarujemy przy użyciu słówka kluczowego var (lub let jeśli piszemy w ES6) - nawet te w pętli:
for(var x = liczbaA; x < 10; ++x)
Inaczej narażamy się na sporą liczbę błędów! http://tutorials.comandeer.pl/js-beauty.html#strict