當我運行這個回圈時,它接受一個包含八個數字的陣列,它回圈并簡單地將它們推送到一個名為 results 的全域陣列中。出于某種原因,當我在回圈之外控制臺記錄這個陣列時,它回傳 0 []。我希望它從另一個陣列回傳八個數字。
const results = []
const validate = arr => {
for(let i = 0; i < arr.length; i ){
results.push(arr[i])
}
}
console.log(results)
uj5u.com熱心網友回復:
您在這里所做的只是定義一個函式,該函式復制已傳遞給它的陣列的內容。您需要
validate使用適當的值呼叫該函式。
const results = []
const validate = arr => {
for(let i = 0; i < arr.length; i ){
results.push(arr[i])
}
}
validate([1,2,3,4,5,6,7,8]);
console.log(results);
uj5u.com熱心網友回復:
那是因為你必須運行函式驗證,現在你只是列印results[]沒有專案。
validate(arr);
const results = []
const arr = [1, 2, 3, 4, 5, 6, 7, 8];
const validate = arr => {
for (let i = 0; i < arr.length; i ) {
results.push(arr[i])
}
}
validate(arr);
console.log(results);
但是如果你想復制,你可以使用:
const arr = [1, 2, 3, 4, 5, 6, 7, 8];
const results = [...arr];
console.log(results);
uj5u.com熱心網友回復:
您錯過了呼叫該函式。
const arr = [1, 2, 3, 4, 5, 6, 7, 8];
const result = [];
arr.map((num) => result.push(num));
console.log(result);
uj5u.com熱心網友回復:
const results = []
const validate = (arr) => {
console.log(arr)
arr.forEach((value)=>{
results.push(value)
});
}
validate([1,2,3,4,5,6,7,8]);
console.log(results);
uj5u.com熱心網友回復:
如果您包含原始數字陣列并呼叫迭代它的函式,您的代碼將起作用:
let arr = [1,2,3,4,5,6,7,8];
let results = [];
function validate() {
for(let i = 0; i < arr.length; i ){
results.push(arr[i])
}
}
validate();
console.log(results)
但是,該Array.prototype.map()方法旨在做這種事情:
let arr = [2,4,6,8];
let results = arr.map(function(element){
return element; // Returns item to resulting array
});
console.log(results)
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/478921.html
標籤:javascript 数组 循环 for循环
