Imutabilidade de Strings em JavaScript

Os caracteres de uma string podem ser lidos, mas não podem ser modificados. O seguinte exemplo de código irá gerar um erro (no modo estrito):

javascriptlet str = 'abcde';
str[0] = '!';