JavaScriptNapisy

String.prototype.length

Długość napisu, czyli liczba jednostek kodu UTF-16. Właściwość jest tylko do odczytu.

Zwraca
Nieujemną liczbę całkowitą: liczbę jednostek kodu UTF-16 w napisie.
Zmienia oryginał
Nie
Na tej stronie

Przykład

#
JavaScript
const course = 'JavaScript'
const empty = ''

console.log(course.length)
console.log(empty.length)
console.log(course[course.length - 1])
Konsola
10
0
t

Definicja i zastosowanie

#

Właściwość length podaje, z ilu znaków składa się napis. Pusty napis "" ma długość 0, a ostatni znak zawsze znajduje się pod indeksem length - 1. To nie metoda, więc piszesz ją bez nawiasów.

Dokładniej length liczy jednostki kodu UTF-16. Zwykłe litery, także polskie, zajmują jedną jednostkę, ale wiele emoji i rzadszych symboli zajmuje dwie, dlatego "👍".length to 2. Liczbę widocznych znaków lepiej sprawdzić przez [...text].length, choć przy emoji złożonych z kilku części (np. z kolorem skóry) nawet to nie wystarczy i przydaje się Intl.Segmenter.

Napisy są niezmienne, dlatego length jest tylko do odczytu. Nie skrócisz tekstu, przypisując mniejszą liczbę, a w trybie ścisłym dostaniesz wręcz błąd. Aby uciąć tekst, utwórz nowy napis przez slice().

Składnia

#
Składnia
string.length

Więcej przykładów

#
Walidacja długości nicku
JavaScript
function validateNickname(nickname) {
  const trimmed = nickname.trim()
  if (trimmed.length < 3) return 'Za krótki nick'
  if (trimmed.length > 16) return 'Za długi nick'
  return 'OK'
}

console.log(validateNickname('Al'))
console.log(validateNickname('  KodowyWojownik  '))
console.log(validateNickname('SuperProgramista2026'))
Konsola
Za krótki nick
OK
Za długi nick
Emoji liczone podwójnie
JavaScript
const reaction = 'Super👍'

console.log(reaction.length)
console.log([...reaction].length)
console.log('żółć'.length)
Konsola
7
6
4
Skracanie długiego tekstu
JavaScript
function truncate(text, max) {
  return text.length > max ? text.slice(0, max - 3) + '...' : text
}

console.log(truncate('Wprowadzenie do programowania', 15))
console.log(truncate('HTML', 15))
Konsola
Wprowadzenie...
HTML

Obsługa przeglądarek

#

Szeroko dostępne

Działa we wszystkich nowoczesnych przeglądarkach, także na telefonach. Możesz używać bez obaw.

  • Chrome
  • Edge
  • Firefox
  • Safari

Dobre praktyki

#
  • Przy limicie znaków, np. w polu opisu, pamiętaj, że emoji mogą liczyć się podwójnie. Jeśli limit dotyczy tego, co widzi użytkownik, licz przez [...text].length.
  • Sprawdzając, czy pole jest puste, najpierw usuń spacje: text.trim().length === 0.

Powiązane hasła

#

Widzisz błąd albo brakuje przykładu? Napisz do nas.