вот хорошая статья по отладке кода
http://learn.javascript.ru/debugging-chrome
ее идея - это просматривать значения переменных при помощи "точек останова". т.е. если вы видите, что результат выполнения программы или участка кода не такой как надо, то вы записали в какую то переменную не правильно значение. с помощью этих "точек останова" вы можете остановить выполнения кода (в зависимости там где вы ее поставили) и посмотреть промежуточные результаты. если они верные, значит ошибка дальше, если нет то ошибку уже пропустили или стоите на ней)