Довжина рядка, числа або іншого елемента має істотне значення. Особливістю методу jаvascript length і змістом поняття довжини є базова функціональність з можливістю багатогранного застосування. Розробник може вкладати в метод length власне уявлення про довжину значення змінної, масиву або об'єкта.
Синтаксис методу і правила застосування
В основному, має довжину рядок і масив. У першому випадку вважається кількість символів, у другому випадку - кількість елементів. Кількість також може мати довжину, але в контексті її обчислення число перетворюється в символьне уявлення.
Об'єкт має власний метод обчислення довжини, тому як його структура може складатися з різних елементів, просте підсумовування довжин яких мало що покаже: тут length jаvascript & довжина рядка - поняття дуже відносне. Хоча до рядка у об'єктів дуже уважне ставлення: всякий об'єкт зобов'язаний укладатися в рядок і вилучатись з неї - традиційне вимога серіалізації/десеріалізації.
У цьому прикладі перші два вирази (1 і 2) обчислюють довжину рядка 'test' представленої послідовністю символів і масивом символів. Вираз (3.1) показує реальну довжину рядка звичайним jаvascript length, а вираз (3.2) попередньо розбиває рядок на масив по символу пробілу, потім обчислює довжину кожного елемента і додає до суми кількість прогалин між елементами.
Нестандартні рішення й новий сенс довжини
Зазвичай дані представлені смисловими групами, тому просто працювати з рядками практично ніколи не має сенсу. Зручніше представляти оброблювану рядок, як мінімум, масивом. Краще, коли вона відразу представляється об'єктом з конкретним змістом.
Представляючи рядок у вигляді масиву, можна призначити анонімну функцію для обчислення довжини елемента. Звичайно, немає ніякої гарантії, що розробник буде розуміти під завдовжки її звичайне значення. У конкретному застосуванні може бути поставлена задача вважати довжиною кількість символів без пробілів або кількість слів у реченні. Анонімна функція легко справляється з конкретними вимогами будь-якої задачі.
Так зміст поняття "довжина" визначається фактичним застосуванням. Крім таких простих випадків, часто може виникнути завдання - вважати довжину з динамічно мінливих правилами. Наприклад, адаптивна верстка змінює розмір вікна браузера і правила CSS зменшують розмір відображуваного символу - прямого сенсу рахувати довжину в символах ні, але важлива довжина рядка при відображенні в пікселях.
Реалістичний підхід до довжини
В обробці інформації має значення довжина в одиницях, з яких ця інформація будується: символи (тільки в цьому випадку можна використовувати jаvascript length без корекції); слова; фрази; пропозиції і т. п. При цьому при відображенні інформації важливий розмір елемента, який вона поміщається, розмір символу і довжина, по якій потрібно потрібний рядок обрізати для її коректного відображення. У кожному конкретному випадку jаvascript length дозволяє розробнику мати базовий очевидний функціонал і можливість адаптувати його до потрібного рішення.