Встроенные методы JavaScript очень помогают нам при программировании, если мы правильно их понимаем. В этой статье я хотел бы объяснить три из них: методы slice (), splice () и split (). Возможно, из-за того, что их названия очень похожи, их часто путают даже опытные разработчики.
Я советую студентам и младшим разработчикам внимательно прочитать эту статью, потому что эти три метода также можно задать в РАБОЧИХ ИНТЕРВЬЮ.
Вы можете найти краткое изложение каждого метода в конце. Итак, начнем…
Массивы JavaScript
Во-первых, вам нужно понять, как работают массивы JavaScript. Как и в других языках программирования, мы используем массивы для хранения нескольких данных в JS. Но разница в том, что массивы JS могут одновременно содержать разные типы данных.
Иногда нам нужно выполнять операции с этими массивами. Затем мы используем некоторые методы JS, такие как slice () и splice (). Ниже вы можете увидеть, как объявить массив в JavaScript:
let arrayDefinition = []; // Array declaration in JS
Теперь давайте объявим еще один массив с другими типами данных. Я буду использовать его ниже в примерах:
let array = [1, 2, 3, "hello world", 4.12, true];
Это использование допустимо в JavaScript. Массив с разными типами данных: строка, числа и логическое значение.
Примечание. Ключевое слово
let
- это функция ES6. Более подробную информацию о ES6 вы можете получить здесь.
Кусочек ( )
Метод slice () копирует заданную часть массива и возвращает эту скопированную часть как новый массив. Это не меняет исходный массив.
array.slice(from, until);
- От: разрезать массив, начиная с индекса элемента.
- До: разрезать массив до индекса другого элемента.
Например, я хочу вырезать первые три элемента из массива выше. Поскольку первый элемент массива всегда имеет индекс 0, я начинаю срезать «из» 0.
array.slice(0, until);
А теперь самое сложное. Когда я хочу разрезать первые три элемента, я должен указать параметр до как 3. Метод slice () не включает последний заданный элемент.
array[0] --> 1 // included array[1] --> 2 // included array[2] --> 3 // included array[3] --> "hello world" // not included
Это может создать некоторую путаницу. Вот почему я называю второй параметр «до».
let newArray = array.slice(0, 3); // Return value is also an array
Наконец, я назначаю нарезанный массив переменной newArray. Теперь посмотрим на результат:
Важное примечание: метод Slice () также можно использовать для строк.
Сращивание ()
Название этой функции очень похоже на slice (). Это сходство названий часто сбивает разработчиков с толку. Метод splice () изменяет массив, добавляя или удаляя из него элементы. Давайте посмотрим, как добавлять и удалять элементы с помощью splice ():
Удаление элементов
Для удаления элементов нам нужно указать параметр index и количество удаляемых элементов:
array.splice(index, number of elements);
Индекс - это отправная точка для удаления элементов. Элементы, которые имеют меньший номер индекса из данного индекса, не будут удалены:
array.splice(2); // Every element starting from index 2, will be removed
Если мы не определим второй параметр, каждый элемент, начиная с данного индекса, будет удален из массива:
В качестве второго примера я даю второму параметру значение 1, поэтому элементы, начиная с индекса 2, будут удаляться один за другим каждый раз, когда мы вызываем метод splice ():
array.splice(2, 1);
После первого звонка:
После 2-го звонка:
Это может продолжаться до тех пор, пока больше не будет индекса 2.
Добавление элементов
Для добавления элементов нам нужно передать их в качестве 3-го, 4-го, 5-го параметра (зависит от того, сколько добавить) методу splice ():
array.splice(index, number of elements, element, element);
В качестве примера я добавляю a и b в самое начало массива и ничего не удаляю:
array.splice(0, 0, 'a', 'b');
Расколоть ( )
Методы Slice () и splice () предназначены для массивов. Метод split () используется для строк. Он делит строку на подстроки и возвращает их в виде массива. Он принимает два параметра, и оба они необязательны.
string.split(separator, limit);
- Разделитель: определяет, как разделить строку… запятой, символом и т. д.
- Лимит: ограничивает количество разделений с заданным числом.
Метод split () не работает напрямую с массивами. Однако мы можем сначала преобразовать элементы нашего массива в строку, а затем использовать метод split ().
Посмотрим, как это работает.
Во-первых, мы преобразуем наш массив в строку с помощью метода toString ():
let myString = array.toString();
Теперь давайте разделим myString на запятые, ограничим их тремя подстроками и вернем их как массив:
let newArray = myString.split(",", 3);
Как мы видим, myString разделена запятыми. Поскольку мы ограничиваем split до 3, возвращаются только первые 3 элемента.
ПРИМЕЧАНИЕ. Если у нас есть такое использование:
array.split("");
, тогда каждый символ строки будет разделен на подстроки:
Резюме:
Кусочек ( )
- Копирует элементы из массива
- Возвращает их как новый массив
- Не меняет исходный массив
- Начинает нарезку с… до заданного индекса: array.slice (от, до)
- В Slice нет параметра индекса «до».
- Может использоваться как для массивов, так и для строк
Сращивание ()
- Используется для добавления / удаления элементов из массива
- Возвращает массив удаленных элементов
- Меняет массив
- Для добавления элементов: array.splice (индекс, количество элементов, элемент)
- Для удаления элементов: array.splice (индекс, количество элементов)
- Может использоваться только для массивов
Расколоть ( )
- Делит строку на подстроки
- Возвращает их в виде массива
- Принимает 2 параметра, оба необязательные: string.split (separator, limit)
- Не меняет исходную строку
- Может использоваться только для струнных
Есть много других встроенных методов для массивов и строк JavaScript. Если вы изучите их использование, эти методы облегчат вам жизнь в программировании.
Надеюсь, теперь у вас есть лучшее понимание. Если нет, то не стесняйтесь задавать свои вопросы в разделе комментариев. Вы также можете ознакомиться с другой моей статьей о CSS ниже.
Если вы хотите узнать больше о веб-разработке, не стесняйтесь подписывайтесь на меня на Youtube!
Спасибо за вашу поддержку и время.