Ошибка в логе c оператора if, который вы используете. Если оператор if содержит операцию logi c, такую как 'AND', 'OR', 'NOT', все части до и после этих операторов будут оценены и, в Javascript, приведут к истине или ложности. (см. mdn: truey и mdn: falsy , что это означает в деталях).
codonArr [i] === 'UUU' будет истинным только тогда, когда значение переменная codonArr [i] равна 'UUU', но строка c строки 'UU C' всегда имеет значение true. По сути, ваше утверждение elseif имеет следующие результаты:
if (true || true) и if (false || true), которое всегда будет вычисляться в if (true).