【发布时间】:2014-03-05 09:44:24
【问题描述】:
如果字符串不能用数字表示,是否有一种巧妙的方法可以将字符串转换为数字或 null?我一直在使用下面的方法:
if _.isNaN( Number(mystring) ) then null else Number(mystring)
哪个有效,但我很好奇是否有更短的东西?可能,或者这是最简洁的方式?
【问题讨论】:
如果字符串不能用数字表示,是否有一种巧妙的方法可以将字符串转换为数字或 null?我一直在使用下面的方法:
if _.isNaN( Number(mystring) ) then null else Number(mystring)
哪个有效,但我很好奇是否有更短的东西?可能,或者这是最简洁的方式?
【问题讨论】:
如果你不关心“0”,那么你可以使用
+s||null
如果你想支持"0",那我没有比这更好的了
1/s?+s:null
【讨论】:
+ 有什么作用?在这种情况下?
mystring 为“0”时不起作用。
parseInt(myString) 呢?
这是对 OP 答案的一个小改进,并且相当易读:
isNaN(mystring) ? null : +mystring
【讨论】: