unshift() push() и unshift() имеют соответствующие методы, которые являются почти функциональными противоположностями: pop() и shift() . Как вы уже догадались, вместо добавления pop() удаляет элемент из конца массива, а shift() удаляет элемент с самого начала. Ключевое различие между pop() и shift() и их кузенами push() и unshift() заключается в том, что ни один из методов не принимает параметры, и каждый из них позволяет только массиву изменять один элемент за раз. Давайте взглянем: let greetings = ['whats up?', 'hello', 'see ya!'];Мы также можем вернуть значение удаляемого элемента любым из следующих способов:
greetings.pop ();
// теперь равно ['whats up?', 'hello']
greetings.shift ();
// теперь равно ['hello']
let popped = greetings.pop ();
// возвращает 'hello'
// приветствия теперь равны []
popShift , которая принимает массив как аргумент и возвращает новый массив. Измените функцию, используя функции pop() и shift() , чтобы удалить первый и последний элементы массива аргументов и присвоить удаленные элементы соответствующим переменным, чтобы возвращаемый массив содержал их значения.
popShift(["challenge", "is", "not", "complete"]) should return ["challenge", "complete"]
testString: assert.deepEqual(popShift(['challenge', 'is', 'not', 'complete']), ["challenge", "complete"]);
- text: The popShift function should utilize the pop() method
testString: assert.notStrictEqual(popShift.toString().search(/\.pop\(/), -1);
- text: The popShift function should utilize the shift() method
testString: assert.notStrictEqual(popShift.toString().search(/\.shift\(/), -1);
```