簡體   English   中英

如何傳遞數組作為javaScript中的參數?

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM