晕,getAge 没有任何错误,而是 age 后面的空格错了,居然是全角括弧,LZ 用什么字体呀?!建议使用 Courier New 作为 Coding 标准字体!function age()
改为
function age()

解决方案 »

  1.   

    L@_@K!var strBirthday = "1979-9-9"; // 27
    alert(age()); // true, it's right!
    function age()
    {
        if(getAge(strBirthday)<15)
        {   //执行不到此处
            ErrorString =ErrorString+'19,';
            return false;
        }
        else
        {   //执行不到此处
            return true;
        }
    }
      

  2.   

    更正:而是 age 后面的空格错了
    改为
    而是 age 后面的括弧错了
      

  3.   

    age后面的空格没错,我刚才是忘了换字体了,就用全角打上去了。
      

  4.   

    LZ运行一下以下代码:
    <script type="text/javascript">
    <!--
    function wr(){
        for(var i=0,j=arguments.length;i<j;i++)
            document.write(arguments[i],"&nbsp;&nbsp;&nbsp;");
        document.write("<br>");
    }
    function getAge(strValidDate)
    {
        var arrayValidDate = strValidDate.split("-");
        var intValidYear = parseInt(arrayValidDate[0]); // 获取出生日期年份
        var intValidMonth = parseInt(arrayValidDate[1]); // 获取出生日期月份
        var intValidDay = parseInt(arrayValidDate[2]); // 获取出生日期天数
    wr(intValidYear,intValidMonth,intValidDay);
        var currentDate = new Date(); // 获取当前日期
        var intCurrentYear = parseInt(currentDate.getYear()); // 获取当前日期年份
        var intCurrentMonth = parseInt(currentDate.getMonth() + 1); // 获取当前日期月份
        var intCurrentDay = parseInt(currentDate.getDate()); // 获取当前日期天数
    wr(intCurrentYear,intCurrentMonth,intCurrentDay);
        var intAge = intCurrentYear - intValidYear; // 暂时年龄
        var validDate = new Date(intValidYear,intValidMonth - 1,intValidDay); // 日期型出生时间
        var ageDate = new Date(intValidYear,intCurrentMonth - 1,intCurrentDay); // 当前年周岁时间wr(validDate,ageDate);    // 如果出生日期小于等于当前周岁时间则已满周岁否则不满周岁(减 1 )
        if ( ageDate - validDate <= 0 )
        {
           intAge=intAge-1;
        }
    wr(intAge);
                                //执行到此处时intAge仍然是正确的
        return intAge;
    }function age(strBirthday)
    {
        if(getAge(strBirthday)<15)
        {                           //执行不到此处
            ErrorString =ErrorString+'19,';
            return false;
        }
        else
        {                       //执行不到此处
            return true;
        }
    }
    wr(age("1988-09-09"))
    //-->
    </script>
      

  5.   

    function age()
    {
    if(getAge(strBirthday)<15)
                    {    
                             alert("错误1");                
                    }
                    else
                    {                     
                        alert("错误2"); 
                    }
    }这样是可以的,刚才试的。可是为什么把  alert("错误1");  和alert("错误2"); 换成随便其它的非代码字符的时候,脚本为什么不报错?我是用VS做的,都是通过往脚本里添加一些其它字符来变相设置断点。这个脚本为什么不可以那样做??
      

  6.   

    查查代码中是否含有不可见全角空格!以下代码就是复制了 LZ 代码,一切正常L@_@K! <body>
      <script type="text/javascript">
      <!--
    function getAge(strValidDate)
    {
        var arrayValidDate = strValidDate.split("-");
        var intValidYear = parseInt(arrayValidDate[0]); // 获取出生日期年份
        var intValidMonth = parseInt(arrayValidDate[1]); // 获取出生日期月份
        var intValidDay = parseInt(arrayValidDate[2]); // 获取出生日期天数    var currentDate = new Date(); // 获取当前日期
        var intCurrentYear = parseInt(currentDate.getYear()); // 获取当前日期年份
        var intCurrentMonth = parseInt(currentDate.getMonth() + 1); // 获取当前日期月份
        var intCurrentDay = parseInt(currentDate.getDate()); // 获取当前日期天数
        
        var intAge = intCurrentYear - intValidYear; // 暂时年龄
        
        var validDate = new Date(intValidYear,intValidMonth - 1,intValidDay); // 日期型出生时间
        var ageDate = new Date(intValidYear,intCurrentMonth - 1,intCurrentDay); // 当前年周岁时间    // 如果出生日期小于等于当前周岁时间则已满周岁否则不满周岁(减 1 )
        if ( ageDate - validDate <= 0 )
        {
           intAge=intAge-1;
        }
        //执行到此处时intAge仍然是正确的
        return intAge;
    }function age()
    {
        if(getAge(strBirthday)<15)
        {
            ErrorString = ErrorString + '19,';
            return false;
        }
        else
        {
            return true;
        }
    }var strBirthday = "1999-9-9";
    //var strBirthday = "1979-9-9";
    var ErrorString = "Error: ";alert(age());
    alert(ErrorString);  //-->
      </script>
     </body>