Gibt es noch eine Möglichkeit, dass Groß- und Kleinschreibung ignoriert wird?
.replace(new RegExp(abkuerzung, "i"), verzeichnis[abkuerzung])
Aber Achtung: Der String wird dann als Regulärer Ausdruck ausgewertet. Das heißt, dass gewisse Buchstaben eine besondere Bedeutung haben. Z.B. bedeutet ».« nicht einfach Punkt, sondern »ein beliebiges Zeichen«.
In dem Fall müsstest du ein \ vor den . stellen, um es unschädlich zu machen und seine ursprüngliche Bedeutung zu bewahren. Dem \ muss man wiederum \voranstellen, damit es nicht als andere Escape-Sequenz angesehen wird:
var verzeichnis = {
"usw\." : "und so weiter"
};
Diese Ersetzung kann man natürlich auch automatisieren - wiederum durch einen regulären Ausdruck mit replace.
Mathias