n elements and an integer k, write a function called rotateArray that rotates the array k steps to the right. For example, given the array [1,2,3,4,5,6,7] and k = 3, the output should be [5,6,7,1,2,3,4]. Consider how you might implement this by just using Array builtin methods as well as traditional loops.
splice() and unshift() methods. In this approach, we use a while loop to repeatedly remove the last element of the array using the splice method and then add it to the beginning of the array using the unshift method. Here is an example of this solution in code:function rotateArray(arr, k) {
while (k > 0) {
// remove last element of the array
let removedElement = arr.splice(-1, 1);
// add removed element to the beginning of the array
arr.unshift(removedElement[0]);
k--;
}
return arr;
}
splice() method to remove the last k elements of the array, and then use the unshift() method to add them to the beginning of the array.Here's an example of this solution in code:
function rotateArray(arr, k) {
// remove the last k elements of the array
let removedElements = arr.splice(-k, k);
// add the removed elements to the beginning of the array
Array.prototype.unshift.apply(arr, removedElements);
return arr;
}Array.prototype.unshift.apply(arr, removedElements); rather than arr.unshift(removedElements);arr.unshift(removedElements) would add the entire removedElements array as a single element to the beginning of the arr array, resulting in an array that looks like [[5,6,7], 1,2,3,4].Array.prototype.unshift.apply(arr, removedElements) on the other hand, uses the apply() method to apply the unshift() method to the arr array, and pass the removedElements array as separate arguments. This allows each element of the removedElements array to be added individually to the beginning of the arr array, resulting in an array that looks like [5,6,7,1,2,3,4].In other words, arr.unshift(removedElements) will add the removedElements array as a single element to the arr array, while Array.prototype.unshift.apply(arr, removedElements) will add each element of the removedElements array individually to the arr array.