В якості типу JavaScript для подання тексту використовується рядок – незмінна впорядкована послідовність 16-бітних значень, кожне з яких, як правило, є символом Unicode.
Довжиною рядка є кількість 16-бітних значень, що в ньому знаходяться. Рядки та масиви в JavaScript використовують індексацію, що починається з 0. Порожній рядок – це рядок довжиною 0. Для подання одиночного 16-бітного значення слід використовувати рядок здовжиною 1.
JavaScript використовує кодування UTF-16 набору символів Unicode, а рядки JS є послідовностями 16-бітних значень без знаку. Найбільш часто використовувані символи з “основної багатомовної площини” мають кодові точки, що вміщаються в 16 біт та можуть бути подані одним елементом рядка. Символи з кодовими точками що не вміщаються в 16 біт кодуються у вигляді “сурогатної пари”.
Більшість методів маніпулювання рядками виначених у JS діють не на символах, а на їх 16 бітних значеннях. Втім з ES6 рядки є інтерпритуемими, та використання цикла for/of чи операції … призведе до проходу саме по дійсних символах.