Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/blackberry/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 不评估的字符_Javascript_If Statement_Boolean_Charat - Fatal编程技术网

Javascript 不评估的字符

Javascript 不评估的字符,javascript,if-statement,boolean,charat,Javascript,If Statement,Boolean,Charat,我正在尝试编写一个函数,该函数将计算字符串中字符的相等性,如果行中有3个字符匹配,则返回true。charAt()似乎不起作用,因为if语句总是转到else块 function myFunction(num1) { var checkNum1; for (var i = 0; i < num1.length; i++) { if (num1.charAt(i) == num1.charAt(i+1) && num1.charAt(i) == num1.ch

我正在尝试编写一个函数,该函数将计算字符串中字符的相等性,如果行中有3个字符匹配,则返回true。charAt()似乎不起作用,因为if语句总是转到else块

function myFunction(num1) 
{
var checkNum1;
  for (var i = 0; i < num1.length; i++)
  {
    if (num1.charAt(i) == num1.charAt(i+1) && num1.charAt(i) == num1.charAt(i+2))
    {
    checkNum1 = true;
    break;
    }
  }
  if (checkNum1 == true)
  {
  return true;
  }

  else
  {
  return false;
  }
}
函数myFunction(num1)
{
var checkNum1;
对于(变量i=0;i

我应该怎么做才能让最后一个“if”块返回true?

您提供的代码可以很好地处理字符串,即:myFunction(“257986555213”)返回true

但是,myFunction(257986555213)返回false,因为charAt是字符串方法

作为一种故障保护方法,您可以尝试在方法的开头添加以下行:

num1 += '';
这将把你的参数转换成字符串,你会得到结果


希望能有帮助

您向myFunction传递了什么?访问
i+1
不正确。向myFunction传递了一个字符串,例如257986555213。我试图识别一行中何时有3个匹配的数字(在示例中为5)。它实际上返回true您确定传递的是字符串而不是数字吗?请向我们显示产生意外结果的调用的确切代码。我只能使用您的代码来执行此操作。如何在您的案例中不运行它。尝试调试。