Hi FE !
Ai
git
前端面试题
前端小tip
  • vite
  • webpack
npm
  • vue2
  • vue3
react
GitHub
Ai
git
前端面试题
前端小tip
  • vite
  • webpack
npm
  • vue2
  • vue3
react
GitHub
  • 判断一个单词是否回文

判断一个单词是否回文

回文是指把相同的词汇或句子,在上下文中调换位置或颠倒过来,产生首尾回环的情趣,叫做回文,也叫回环。比如 redivider。

方法一:使用 reverse()

function checkPalindrom(str) {
	return str == str.split('').reverse().join('');
}

改进版本(去除空格和大小写敏感)

// 去掉代码中空格
function checkPalindrom(str) {
  str = str.replace(/\W/g, '').toLowerCase();
  return (str == str.split('').reverse().join(''));
}

方法二:手动反转字符串

思路:将单词换成字符串A,从后往前循环字符串A,将循环出来的字符拼接成新的字符串B,比较字符串A和B,得出结论。

function isPalindrome(x) {
	let str = x + '';
	let newStr = '';
	for(let i = str.length - 1; i >= 0; i --) {
		newStr += str[i]
	}
	return newStr === str;
}

方法三:中心对称比较

以中间数为节点,判断左右两边首尾是否相等。

/**
 * 以中间数为节点,判断左右两边首尾是否相等
 * @param {number} x
 * @return {boolean}
 */
function isPalindrome(x) {
  x = '' + x
  for(let i = 0 ; i < x.length/2; i++) {
    if (x[i] !== x[x.length - i - 1]) {
      return false
    }
  }
  return true
}
Edit this page
最近更新: 2025/12/2 01:46
Contributors: qdleader
qdleader
本站总访问量 129823次 | 本站访客数 12人