第二个字符串是否是第一个字符串的旋转版本 JavaScript

javascriptweb developmentfront end technologyobject oriented programming

我们需要编写一个 JavaScript 函数,该函数接受两个字符串,例如 str1 和 str2。我们需要确定第二个字符串是否是第一个字符串的旋转版本。

例如− 如果输入字符串是 −

const str1 = 'abcde';
const str2 = 'cdeab';

然后输出应该为 true,因为 str2 确实是通过将 'ab' 移到 str1 中的字符串末尾而生成的。

示例

const str1 = 'abcde';
const str2 = 'cdeab';
const isRotated = (str1, str2) => {
   if(str1.length !== str2.length){
      return false
   };
   if( (str1.length || str2.length) === 0){
       return true
   };
   for(let i = 0; i < str1.length; i++){
      const reversed = str1.slice(i).concat(str1.slice(0, i));
      if(reversed === str2){
         return true
      };
   }
   return false;
};
console.log(isRotated(str1, str2));

输出

控制台中的输出将是 −

true

相关文章