While(range--) What´s this?

I´ve seen this piece of code in another post:


function getRandomNum(range, place, l) {
		var sourceArray = [];
	while (range--) {
		sourceArray.push(place + range);
	}

What does the [COLOR=darkblue]while(range–)[/COLOR] do?
How can you say the same thing using “if”?