解法:先預設石頭內沒有任何珠寶,石頭以及珠寶轉成陣列
forEach走訪每顆珠寶將透過reduce取得石頭蘊含珠寶數量並將其加總,回傳即可
JavaScript
/**
* @param {string} jewels
* @param {string} stones
* @return {number}
*/
var numJewelsInStones = function (jewels, stones) {
let searchArray = jewels.split("");
let count = 0;
searchArray.forEach(s => {
let sum = stones.split("").reduce((sum, n) => sum + (n === s ? 1 : 0), 0);
count += sum;
})
return count;
};