решение с конечными автоматами (это же оно?). Получилось неожиданно (для меня) симпатично.
Gvozd, я их недооценивал
Хоть и с регэкспами читабельнее
function count( s, word, char ) {
var text = document.getElementById(s).value;
document.getElementById(char).value = text.length;
var prv = ' ', wordCnt = 0;
for( var i=0; i<text.length; i++ ) {
if( text.charAt(i) != ' ' && prv == ' ' )
wordCnt++;
prv = text.charAt(i);
}
document.getElementById(word).value = wordCnt;
}
UPD: похоже это все-таки не конечные автоматы