乱序同字母字符串
要求:
给定两个字符串,判断是否颠倒字母而成的字符串,譬如Mary与Army就是同字母而顺序颠倒
思路:
给定两个字符串,首先将这两个字符串都转换为小写或者大写,然后都采用sort()进行排序,如果二者最后一样,那么就证明二者是乱序通字母字符串
/*
乱序同字母字符串
给定两个字符串,判断是否颠倒字母而成的字符串,譬如Mary与Army就是同字母而顺序颠倒:
思路:给定两个字符串,首先将这两个字符串都转换为小写或者大写,然后都采用sort()进行排序
如果二者最后一样,那么就证明二者是乱序通字母字符串
*/
const str1 = "Happy";
const str2 = "Appyh";
console.log(isAnagram(str1,str2));
function isAnagram(firstArr, secondArr) {
let a = firstArr.toLowerCase();
let b = secondArr.toLowerCase();
a = a.split("").sort().join("");
b = b.split("").sort().join("");
return a===b;
}
回文字符串
要求:
判断某个字符串是否为回文字符串,譬如racecar与race car都是回文字符串
思路:
利用原串与翻转后的串进行比较,如果二者一样,则证明就是回文字符串
console.log(isPalindrome("racecar")); // true
console.log(isPalindrome("race Car")); // true
function isPalindrome(word) {
// \s代表正则表达式中的一个空白字符(可能是空格、制表符、其他空白)
//将空格字符去掉
var lettersOnly = word.toLowerCase().replace(/\s/g, "");
console.log(lettersOnly);
return lettersOnly === lettersOnly.split("").reverse().join("");
}
参考自https://mp.weixin.qq.com/s/cS7yiYr0tqKjToK-msyLOQ