回文是正反都能读通的单词、词组、数或一系列字符的序列,例如madam或racecar。

    1. function palindromeChecker(aString) {
    2. if (
    3. aString === undefined ||
    4. aString === null ||
    5. (aString !== null && aString.length === 0)
    6. ) {
    7. return false;
    8. }
    9. const deque = new Deque();
    10. const lowerString = aString.toLocaleLowerCase().split(' ').join('');
    11. let firstChar;
    12. let lastChar;
    13. for (let i = 0; i < lowerString.length; i++) {
    14. deque.addBack(lowerString.charAt(i));
    15. }
    16. while (deque.size() > 1) {
    17. firstChar = deque.removeFront();
    18. lastChar = deque.removeBack();
    19. if (firstChar !== lastChar) {
    20. return false;
    21. }
    22. }
    23. return true;
    24. }