char没有评估

时间:2016-10-05 13:29:39

标签: 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.charAt(i+2))
    {
    checkNum1 = true;
    break;
    }
  }
  if (checkNum1 == true)
  {
  return true;
  }

  else
  {
  return false;
  }
}

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

1 个答案:

答案 0 :(得分:1)

您提供的代码可以正常使用字符串,即:myFunction(“257986555213”)返回true。

但是,myFunction(257986555213)返回false,因为charAt是一个String方法。

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

@echo off
    setlocal enableextensions disabledelayedexpansion

    for /f "tokens=2 delims==" %%a in ('
        wmic    path WIN32_UserAccount
        where   ( 
                    LocalAccount^="True" 
                    And SID Like "S-1-5-21-%%-500"
                ^)
        get Name /value
    ') do for /f delims^=^ eol^= %%b in ("%%a") do set "adminName=%%b"

    echo Local administrator account = [%adminName%]


    for /f "tokens=2 delims==" %%a in ('
        wmic    path WIN32_Group
        where   (
                    SID Like "S-1-5-32-544"
                ^)
        get     Name /value
    ') do for /f delims^=^ eol^= %%b in ("%%a") do set "adminGroup=%%b"

    echo Local administrators group  = [%adminGroup%]


    for /f "tokens=2 delims==" %%a in ('
        wmic    path WIN32_Group
        where   (
                    SID Like "S-1-5-32-545"
                ^)
        get     Name /value
    ') do for /f delims^=^ eol^= %%b in ("%%a") do set "usersGroup=%%b"

    echo Local users group           = [%usersGroup%]

这应该将你的参数转换为字符串,你应该得到你的结果..

希望它能帮助!!