So I have homework that requires me to dequeue from an array like so:
let arr = [1, 2, 3]
My only problem is that I'm restricted in using any array method except for the .length method.
I have tried using the delete to remove the first element but I know it doesn't adjust the array and reflects undefined for the first element:
function dequeue(){
delete arr[0];
console.log(arr)
}
Any help or advice on how to do it is highly appreciated.
CodePudding user response:
Assuming, you can still use assigment with index, you could copy all items one index before and decrement the length of the array.
let array = [1, 2, 3];
for (let i = 1; i < array.length; i ) array[i - 1] = array[i];
array.length--;
console.log(array);
<iframe name="sif1" sandbox="allow-forms allow-modals allow-scripts" frameborder="0"></iframe>
CodePudding user response:
If .map is allowed to use in your case.
array = array.map((elm,index,arr) => arr[index 1]);
array.length--;
CodePudding user response:
You can use Destructuring assignment. try this out:
const [firstElement, ...restOfTheArray] = yourArray;
restOfTheArray
is the same array with the first element removed.