我需要你的帮助来完成以下内容:我正在尝试开发一个函数,用于检查两个参数字符串是否彼此旋转相等,比如"abcd"如果我们将其顺时针旋转两次,则变成"cdab",因此我的函数应该在提供上述字符串作为参数时返回"true"。我最初解决这个问题的想法是检查两个字符串中每个字符之间的常量偏移是否存在,因此我尝试了:
function areRotEq (str1, str2) {
var shift = null;
for(char of str1){
if(!shift) shift = str2.indexOf(char);
else if (shift != str2.indexOf(char)) return false
}
return true;
}
但是,它甚至不能正确地评估上述简单字符串,并返回“false”。如果您可以指导我找出为什么我的代码不起作用,或者提供一些更有效的解决方法来解决我的问题,那将不胜感激。 提前致谢!