Chúng ta phải viết một hàm mảng (Array.prototype.get ()) có ba đối số đầu tiên là một số n, thứ hai cũng là một số, chẳng hạn như m, (m <=array length-1) và thứ hai là một chuỗi có thể có một trong hai giá trị - 'left' hoặc 'right'.
Hàm phải trả về một mảng con của mảng ban đầu chứa n phần tử bắt đầu từ chỉ số m và theo hướng được chỉ định như trái hoặc phải.
Ví dụ -
// if the array is: const arr = [0, 1, 2, 3, 4, 5, 6, 7]; // and the function call is: arr.get(4, 6, 'right'); // then the output should be: const output = [6, 7, 0, 1];
Vì vậy, hãy viết mã cho chức năng này -
Ví dụ
const arr = [0, 1, 2, 3, 4, 5, 6, 7];
Array.prototype.get = function(num, ind, direction){
const amount = direction === 'left' ? -1 : 1;
if(ind > this.length-1){
return false;
};
const res = [];
for(let i = ind, j = 0; j < num; i += amount, j++){
if(i > this.length-1){
i = i % this.length;
};
if(i < 0){
i = this.length-1;
};
res.push(this[i]);
};
return res;
};
console.log(arr.get(4, 6, 'right'));
console.log(arr.get(9, 6, 'left')); Đầu ra
Đầu ra trong bảng điều khiển sẽ là -
[ 6, 7, 0, 1 ] [ 6, 5, 4, 3, 2, 1, 0, 7, 6 ]