Массивы и объекты должны быть наиболее часто используемыми и наиболее часто используемыми типами в JavaScript. Массив предоставляет много часто используемых методов: метод стека, метод очереди, метод повторного порядка, метод работы, метод положения, метод итерации и т. Д.
1. Метод стека массива
Стек представляет собой структуру данных LIFO (последняя в первом выходе, позже в первую очередь), то есть последнее добавленное элемент удаляется в ближайшее время. Вставка и удаление элементов в стек происходит только в одном месте - верхней части стека. Ecmascript предоставляет методы push () и pop () для массивов, которые могут реализовать поведение, похожее на стек. Следующие две цифры демонстрируют операции ввода стека и выхода стека соответственно.
Метод push () может получать параметры любых данных, добавить их один за другим к концу массива и возвращать модифицированную длину массива. Метод POP () удаляет последний элемент с конца массива, уменьшая значение длины массива
var студентов = []; студенты.push ("bluce", "Jordan", "Marlon", "kobe"); // 4 пункта стека настороженно (студенты. length); // 4alert (студенты [0]); // "bluce", первый пункт находится в нижней части оповещения стека (студенты [1]); //"jordan"students.push("paul"); Aalert(students.length); // 5var item = student.pop (); //"paul"alert(students.length); // 42. Метод очереди массива
Правилом доступа структуры данных стека является LIFO (последнее в первом месте), в то время как правилом доступа структуры данных очереди составляет FIFO (первым в первую очередь, сначала в первую очередь) . Очередь добавляет элементы в конце списка и удаляет элементы с передней части списка. Метод push () - это метод добавления элементов в конце массива. Следовательно, чтобы имитировать очередь, вам нужен только метод для получения элементов с передней части массива - shift (), который может удалить первый элемент в массиве и вернуть элемент и в то же время, длину -1 массива. Используя методы shift () и push () в комбинации, вы можете использовать массивы, как вы бы с очередями.
var студентов = []; студенты.push ("bluce", "Jordan", "marlon", "kobe"); // 4 пункта Enqueue // Студенты = ["bluce", "Jordan", "Marlon", "kobe"]; alert (студенты. length); // 4alert (студенты [0]); // "bluce", первый пункт находится в нижней части оповещения стека (студенты [1]); //"jordan"students.push("paul"); Aalert(students.length); // 5 // Студенты = ["bluce", "Jordan", "Marlon", "Kobe", "paul"]; var item = study.shift (); //"bluce"Аlert(students.length); // 4 // Студенты = ["Джордан", "Марлон", "Кобе", "Пол"];Кроме того, Ecmascript также предоставляет метод unshift (), который может добавить любой элемент к переднему конце массива и вернуть длину нового массива. Следовательно, используя методы Unshift () и pop () в комбинации, вы можете смоделировать очередь из противоположного направления, то есть добавить элементы на переднем конце массива и удалить элементы с конца массива