用 JavaScript 過濾陣列以包含迴文元素
我們需要編寫一個 JavaScript 函式,它獲取一個字串/數字字面量的陣列,並返回原始陣列中所有迴文字串的子陣列。
例如
如果輸入陣列是 -
const arr = ['carecar', 1344, 12321, 'did', 'cannot'];
那麼輸出應為 -
const output = [12321, 'did'];
我們將建立一個幫助器函式,它獲取一個數字或字串並檢查它是不是布林值。
然後我們將遍歷陣列,過濾迴文元素並返回過濾後的陣列。
因此,讓我們編寫此函式的程式碼 -
示例
程式碼如下 -
const arr = ['carecar', 1344, 12321, 'did', 'cannot']; const isPalindrome = el => { const str = String(el); let i = 0; let j = str.length - 1; while(i < j) { if(str[i] === str[j]) { i++; j--; } else { return false; } } return true; }; const findPalindrome = arr => { return arr.filter(el => isPalindrome(el)); }; console.log(findPalindrome(arr));
輸出
控制檯中的輸出將是 -
[ 12321, 'did' ]
廣告