算法:回文检测的学习引申
背景 回文检测是我在学习JavaScript的数组内容时接触到的一个比较典型的项目。 首先,我们来看看回文的定义: 若一个字符串等于将它反转后的结果,那可以称这个字符串是一个回文,常见的有: ● “ABA” ● “121” ● “上海自来水来自海上”等等等等 接下来通过3道题目来实现不同程度的回文检测。 题一 创建一个回文检测页面,支持用户输入文本后点击“Check”按钮可以判断输入的文本是不是回文,并输出判断结果。 解题思路: 1. 创建基础HTML(body节点需要包含至少输入框、检查按钮、结果输出框); 2. 通过JS获取用户输入的值getValue 3. 将获取的值转化为数组 .split() 4. 将数组进行反转后得到新的数组 .reverse() 5. 将新数组转化为新的字符串 .join() 6. 判断新旧字符串是否相等,相等即为回文 7. 输出判断结果 示例代码: //初始化变量 const userInput = document.getElementById("text-input"); const checkBtn = document.getElementById("check-btn"); const result = document.getElementById("result"); //设置判断逻辑 function isPalindrome(str){ const strReverse = str.toLowerCase().split('').reverse().join(''); return str.toLowerCase() == strReverse ? true : false; } //设置输出规则 const outputResult = (str) => { if(str == ""){ alert("请先输入文本"); }else if(isPalindrome(st...