是否是 isNaN() 自动对字符串两头的空格进行 Trim() 处理了?

解决方案 »

  1.   

    这个还不能肯定,关于空格,并没有特别提到。相反对于 isNaN 会默认使用 parseInt 和 parseFloat 倒是在 JScript 中介绍了。如果说 isNaN 去掉了空格,那也是在使用 parseInt 之前还是之后呢?比较两种情况isNaN(" ") 和 isNaN(parseInt(" ")) 返回的结果,并不相同。
      

  2.   

    前后的空格都会去掉,例如:
       isNaN(" 12")  //去掉左边的
       isNaN("12 ")  //去掉右边的
       isNaN(" 12 ")  //两头都去除
       isNaN(" 1 2 ")  //不会把中间的去掉,所以返回true    但是 parseInt() 却不会这样自动处理,我也是猜测,继续验证
      

  3.   

    看到你在 51JS 的回复了,谢谢。现在看来,空格和空字符串都会如此。
      isNaN("")  //false
      isNaN(" ")  //false
    这两个的情况是一样的
      parseInt("")  //NaN
      parseInt(" ")  //NaN
      

  4.   

    用isNaN(parseInt("")) 来对空格进行判断.  返回是 true
      

  5.   

    isNaN(parseInt(" "))判断的是空格呢还是NaN这个结果?