如何在Javascript中将字符串转换为int?

如何在Javascript中将字符串转换为int?,javascript,Javascript,如何在JS中将字符串转换为int,同时正确处理错误情况 我希望在参数不是真正的整数quanityt时返回NaN: 空字符串应返回NaN(不是0) 混合字符串(例如“3b”)应返回NaN(不是3) 例子 stringToInt("") NaN stringToInt("3") 3 stringToInt("3x") Nan 例子 stringToInt("") NaN stringToInt("3") 3 stringToInt("3x") Nan 你不需要太多- 如果s是字符串:

如何在JS中将字符串转换为int,同时正确处理错误情况

我希望在参数不是真正的整数quanityt时返回NaN:

  • 空字符串应返回NaN(不是0)
  • 混合字符串(例如“3b”)应返回NaN(不是3)
    • 例子

      stringToInt("")
      NaN
      
      stringToInt("3")
      3
      
      stringToInt("3x")
      Nan
      
      例子

      stringToInt("")
      NaN
      
      stringToInt("3")
      3
      
      stringToInt("3x")
      Nan
      
      你不需要太多- 如果s是字符串:

      s%1如果s是整数,则返回0

      如果s是一个非整数,它将返回一个非零的数字

      如果s根本不是一个数字,那么NaN

      function isInt(s){
          return (s%1===0)? Number(s):NaN;
      }
      
      但是,尽管返回的数字是一个整数,但对于javascript来说,它仍然只是一个数字。

      您不需要太多- 如果s是字符串:

      s%1如果s是整数,则返回0

      如果s是一个非整数,它将返回一个非零的数字

      如果s根本不是一个数字,那么NaN

      function isInt(s){
          return (s%1===0)? Number(s):NaN;
      }
      

      但是,尽管返回的数字是一个整数,但对于javascript来说,它仍然只是一个数字。

      我认为,根据其他SO问答,当给定“3b”时,parseInt将返回“3”,当给定“3b”时,将返回“0”。请不要链接到W3b。人们普遍认为这是一个糟糕且不准确的参考。真的吗?我承认我没有做太多的网络开发,但我从来没有遇到过任何不准确的东西。你有一个例子吗?我认为,根据其他SO问答,当给定“3b”时,parseInt将返回“3”,当给定“3b”时,将返回“0”。请不要链接到W3b。人们普遍认为这是一个糟糕且不准确的参考。真的吗?我承认我没有做太多的网络开发,但我从来没有遇到过任何不准确的东西。你有例子吗?简单,简单。。。我喜欢!没有什么内置的,嗯?简单,容易。。。我喜欢!但是没有内置内容,嗯?你也可以检查null,因为它将被视为0。你也可以检查null,因为它将被视为0。
      function isInt(s){
          return (s%1===0)? Number(s):NaN;
      }