JavaScript: всегда ли мы могли индексировать строку, как массив?

Мы всегда думали, что если вы хотите получить доступ к n-ому символу в строкеstrтогда вы должны сделать что-то вродеstr.charAt(n), Сегодня я делал небольшую тестовую страницу и по ошибке зашел на нееstr[n] и, к моему удивлению, он вернул мне n-й символ строки. Я подбросил эту маленькую специально созданную страницу, чтобы продемонстрировать это неожиданное (для меня) поведение:




    
        var str = "ABCDEFGH";
        if (str[4] === str.charAt(4)) alert("strings can be indexed directly as if they're arrays");
        var str2 = new String("ABCDEFGH");
        if (str2[4] === str2.charAt(4)) alert("even if they're declared as object type String");
    


Это не былоЭто всегда так, правда?

Ответы на вопрос(3)

Ваш ответ на вопрос