Array = [ 1, 3, 7, 2 ]
1st Iteration = [ 1, 3, 7, 1 ]
2nd Iteration = [ 1, 3, 7, 0 ]
3rd Iteration = [ 1, 3, 6 ]
4th Iteration = [ 1, 3, 5 ]
等等等等……
最終迭代應該為空[]
我想創建一個回圈,該回圈采用最后一個索引并在每次迭代時將值遞減 1。當最后一個索引中的值 = 0 時,它應該彈出它...
任何幫助,將不勝感激。
uj5u.com熱心網友回復:
我們可以使用 while 和 Array.prototype.pop()。
function solution(array) {
while (array.length !== 0) {
while (array[array.length - 1] >= 1) {
array[array.length - 1] -= 1;
console.log(array);
}
array.pop();
console.log(array);
}
}
uj5u.com熱心網友回復:
我想這可能會幫助你。
const decrementLastIndex = (array) => {
let newArray = [];
for (let i = array.length - 1; i >= 0; i--) {
newArray.push(array[i]);
}
return newArray;
}
uj5u.com熱心網友回復:
這是實作這一目標的一種方法!
function decrementElement(array){
while(array?.length !== 0){
let size = array.length;
let lastIndex = size - 1;
if(array[lastIndex] > 0) {
array[lastIndex] -= 1;
} else {
array.pop();
}
//printing the array
console.log(array);
}
};
我希望它有所幫助:) 如果您需要更多幫助或有任何疑問,請回復此問題。
uj5u.com熱心網友回復:
您可以采用遞回方法并首先檢查最后一項。
function dec(array) {
if (!array.at(-1)) array.pop();
else array[array.length - 1]--;
console.log(...array);
if (array.length) return dec(array);
}
dec([1, 3, 7, 2]);
.as-console-wrapper { max-height: 100% !important; top: 0; }
轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/514935.html
