Neměnnost řetězců v JavaScriptu

Znaky řetězce lze číst, ale nelze je měnit. Následující příklad kódu vyhodí chybu (v přísném režimu):

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