[英]How to pass array to function as argument in javaScript?
我想映射數組元素並返回 true 或 false 例如,如果我的數組中有兩個數字的總和等於 8。
糟糕的方式
function showNumbered(arr) {
for(let i = 0; i < arr.length; i++) {
for(let x = 0; x < arr.length; x++) {
if( arr[i] + arr[x] == 8 ) {
console.log(true);
}else{
console.log(false);
}
}
}
}
“如何將數組傳遞給函數作為參數”
function showNumbered(arr) {
for(let i = 0; i < arr.length; i++) {
for(let x = 0; x < arr.length; x++) {
if( arr[i] + arr[x] == 8 ) {
console.log(true);
}else{
console.log(false);
}
}
}
}
const arr = [1,2,3,4,5,6]
showNumbered(arr)
你可以用線性方式做到這一點。 在)
function showNumbered(arr, target) { const complementary = new Map(); for(let i = 0; i < arr.length; i++) { if(complementary.has(arr[i])){ console.log(complementary.get(arr[i]), i) } complementary.set(target - arr[i], i) } } showNumbered([1,3,5,6,8,3,4], 4)
將每個與數組中的每個數值相加。
如果總和等於 8 則返回true
否則返回false
var array = [3, 6, 2, 8, 4, 7]; function arrSum(arr) { var ret = true; for (var i = 0; i < arr.length; i++) { for (var ii = i+1; ii < arr.length; ii++) { if (arr[i] + arr[ii] === 8) { console.log(arr[i], '+', arr[ii], '=', true); ret = false; } } } if(ret) { console.log(false); } } arrSum(array);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.