class MyArray{
constructor(){
this.length=0;
this.data={};
}
get(index){
return this.data[index];
}
push(item){
this.data[this.length]=item;
this.length++;
return this.length;
}
pop(){
const lastItem= this.data[this.length-1]
delete this.data[this.length-1];
this.length--;
return lastItem
}
delete(index){
delete this.data[index];
this.shiftItems(index);
}
shiftItems(index){
for(let i=index;i<this.length-1;i++){
this.data[i]=this.data[i+1];
}
delete this.data[this.length-1];
this.length--
}
shift(){
const removedData= this.data[0]
delete this.data[0];
this.shiftItems(0);
return removedData;
}
unshift(item){
this.length++
for(let i=this.length-1;i>=0;i--){
this.data[i]=this.data[i-1];
}
this.data[0]=item
}
}
const arr= new MyArray();
arr.push('Hi');
arr.push('Abhishek');
arr.push('You');
arr.push('Are');
arr.push('Awesome');
console.log('After Push',arr);
arr.unshift('Hello');
console.log('After unshift',arr);