第二个字符串是否是第一个字符串的旋转版本 JavaScript
我们需要编写一个 JavaScript 函数,该函数接收两个字符串,例如 str1 和 str2。我们需要确定第二个字符串是否是第一个字符串的旋转版本。
例如− 如果输入字符串为−
const str1 = 'abcde'; const str2 = 'cdeab';
那么输出应该是 true,因为 str2 实际上是通过将 str1 中的“ab”移动到字符串末尾而生成的。
示例
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
广告