почитайте в гугле про конечные автоматы.
там же вы сможете найти как реализуется конечный автомат для вашего случая
вкратце, вы просматриваете по очереди все символы строки, меняя состояние специальной переменной
основные состояния:текущая позиция в слове, текущая позиция на пробеле, текущая позиция на первом символе слова
при обнаружении третьего состояния, увеличиваете счетчик слов
var qwe="qwee qwed asds";
var state=0;//состояние
var length=qwe.length;//длина строки в символах
for(var i=0;i<qwe.length;i++){
//тут реализуются условия конечного автомата для каждого символа текущего
if(qwe.charAt(i)=' ')//если i-й символ пробел
state=2;//пробельное состояние
//дальше реализуем остальные состояния.....
}