Новини високих технологій
» » Використання indexOf (JavaScript) при роботі з масивами і рядками

Використання indexOf (JavaScript) при роботі з масивами і рядками

14-11-2017, 21:27
595
jаvascript - унікальний мова програмування і невід'ємна складова браузера, синтаксис і семантика настільки органічно втілюють у собі кращі традиції сучасної розробки алгоритмів, що багато в чому є прикладом для інших мов, що представляють аналогічні можливості в більш громіздкому варіанті.
Метод indexOf jаvascript не позиціонує як операцію пошуку, але з її допомогою можна визначити, де знаходиться символ або підрядок в рядку. Цей же метод застосуємо до звичайних масивів.

Загальний опис методу

Загальний стиль синтаксису jаvascript визначає, що у рядків і масивів є метод indexOf, який обчислює, де починається шукана підрядок (або просто символ) в рядку, де цей метод був застосований.


У контексті загальної логіки мови число може автоматично перетворюватися в тип даних «рядок». Мова надає програмісту описувач «var» без можливості уточнення, який саме тип даних потрібно було описати. Можливість маніпулювання типами даних - чудова якість jаvascript. При описі змінної програміст може вказати початкове значення і, відповідно, встановити її тип, але в потрібний момент часу цей тип зміниться у відповідності з вимогами конструкції або виразу, де змінна буде використана.

Приклад застосування методу

Описано три змінних: рядок символів - «str», звичайний масив - «arr» і асоціативний масив - «ass». На веб-сторінці є дів з id='scCurrInfo', в який буде поміщений результат. Метод indexOf jаvascript надає для рядків і звичайних масивів.


Всі приклади вибірки (пошуку) підрядків наведені в еквівалентному використанні. Вихідні дані представлені однаковим чином.
Використання jаvascript indexOf array подібно чисто рядковий варіанту: якби цей масив був представлений рядком - ефект був би аналогічним. І хоча рядкове представлення даних, в багатьох випадках, ефективніше застосування масивів, застосування методу indexOf для даних типу array також має сенс. Результат виконання наведеного коду показує очевидне відповідність між застосуванням методу до звичайних масивів і класичний варіант jаvascript: indexOf string.
Використання indexOf (JavaScript) при роботі з масивами і рядками
Асоціативні масиви відрізняються своєю природою, відносяться до особливої логіки об'єктно-орієнтованого програмування на цій мові. До них метод indexOf непридатний.

Правила застосування методу

Незалежно до чого (рядок, масив) застосовується метод indexOf, jаvascript дозволяє вказувати другим параметром число: позицію, після якої слід шукати входження потрібної підрядка (символу). Пошук завжди йде до першого входження, тобто результатом методу буде число: позиція (індекс масиву), з якої починається шукана підрядок (символ). Відлік позиції та індексу масиву починається з нуля. Якщо в рядку чи масиві нічого не буде знайдено, результатом буде від'ємне значення - «-1».
Синтаксис мови допускає будь-яку, синтаксично коректні, комбінацію методів і результатів їх виконання. Простіше кажучи, немає необхідності вводити нові змінні. Можна використовувати метод в будь-яких поєднаннях з іншими методами. Можна отримати з дерева DOM який-небудь текст, масив дівов чи іншу сукупність даних і indexOf jаvascript застосувати в точній відповідності з його призначенням.

Ефективні варіанти обробки даних

Синтаксис і семантика jаvascript, особливо стосовно об'єктно-орієнтованого програмування, заслуговують поваги, однак це не заважає розробнику формулювати свої алгоритми згідно з його «власною семантикою». Будь-яка задача несе в собі унікальний сенс, який можна укласти в пропоновані мовою структури даних і конструкції їх обробки. Але набагато простіше будувати об'єкти розв'язуваної задачі, і в їх термінах формулювати її рішення. Це не тільки більш ефективний результат, але і більш зрозумілий алгоритм, меншу кількість помилок у коді і хороша можливість модифікацій результату згодом: не буде необхідності згадувати: що було зроблено і навіщо.
У програмуванні дуже важливий зрозумілий і читабельний код, особливо, коли доведеться його подальший розвиток через деякий час. У цьому контексті програміст може представити дані у звичайних рядках, рядки розмістити в об'єктах, а смислове навантаження розмістити за методами, які через indexOf будуть вибирати потрібні елементи в потрібний час.
Цікаво по темі
Математика від JavaScript Math
Математика від JavaScript Math
Об'єкт Math мови jаvascript реалізує практичний набір математичних функцій. Складні розрахунки можна виконувати всередині браузера, не
Стек JavaScript push/pop
Стек JavaScript push/pop
Стекова організація даних - одна з найдавніших в програмуванні. Останнім прийшов, першим пішов - просто ідеальна конструкція не тільки для
JavaScript, масиви: опис
JavaScript, масиви: опис
jаvascript – сучасна мова програмування, він унікальний у частині синтаксису і семантики. Має специфіку...
Обробка рядків. Метод JavaScript replace()
Обробка рядків. Метод JavaScript replace()
Гіпертекст у форматі HTML, CSS, XML, власні варіанти рядкового подання інформації з сервера надходять ...
Javascript Array для збереження необмеженої кількості змінних
Javascript Array для збереження необмеженої кількості змінних
Логічно масив займає проміжне положення між змінними і об'єктами. Практично не слід надавати особливого значення словам. У програмі є змінні і код.
JavaScript: приклади застосування
JavaScript: приклади застосування
jаvascript - сучасна мова програмування, без якого важко створити динамічний сайт, який привертає увагу. JS ідеально справляється з обробкою