我在javascript中对coderbyte进行编码挑战。这是一个问题: 使用JavaScript语言,让函数ABCheck(str)传递str参数并返回字符串true如果字符a和b在字符串中的任何位置恰好分开3个位置至少一次(即“lane borrowed”会结果为true,因为a和b之间恰好有三个字符。否则返回字符串false。
这是我提出的答案,但不起作用。我无法弄清楚为什么......在很多答案中,人们正在将字符串转换为数组但是有没有办法用.charAt()做到这一点?谢谢!
function ABCheck(str) {
for (var i=0; i < str.length-4; i++){
if ((str.charAt(i) == "a") && (str.charAt(i+4) == "b")){
return true;
}
}
};
我已经纠正了字符串vs str mixup和str.length之后的“-4”。我仍然遇到以下情况的问题。 “在它之后”,“aaaaddddd”和“123advb。它们都应该是假的。我该怎么做?再次感谢。
答案 0 :(得分:0)
答案 1 :(得分:0)
是的,你也可以使用正则表达式。这假设b始终遵循a。
function ABCheck(str)
{
return str.match(/a...b/g) != null;
}