Finders Keepers
此題題意如下:這題的要求就是要寫一個函數,此函數將訪問array(第1個參數),並將符合某給定或已知函數(第2個參數)的第1個元素回傳
function find(arr, func) {
var num = 0;
num = arr.filter(function(emt)
{
return (func(emt)) ? emt : undefined ;
});
return (num.length)? num[0] : undefined;
}
find([1, 2, 3, 4], function(num){ return num % 2 === 0; });
find([1, 3, 5, 8, 9, 10], function(num) { return num % 2 === 0; });
Solution:
P.S. / Reference: filter 方法用來叠代一個數組,並且按給出的條件過濾出符合的元素。filter 方法傳入一個回調函數,這個回調函數會攜帶一個參數,參數為當前叠代的項(我們叫它 val )。
回調函數返回 true 的項會保留在數組中,返回 false 的項會被過濾出數組
Array.prototype.filter()