如何测试一个变量是否引用了 coffeescript 中的一个数字?
How to test if a variable is referencing a number in coffeescript?
简单问题:如何在 coffeescript 中测试一个变量是否引用了一个数字?无法在 docs.
中找到答案
严格来说,您可以使用
测试变量类型(这似乎是您要问的)
typeof n is 'number' and isFinite n
请注意,这不会转换字符串等,只是直接检查它是否已经是一个有限的数字。
你可以有一个全局函数:
isNumber: (n) ->
return not isNaN(parseFloat(n)) and isFinite(n)
并使用它:
is_number = isNumber('123')
它 returns true
如果参数不是 NaN 并且不是 infinity
。否则 returns false
如果您不反对使用库,underscore/lodash 提供了很棒的实用函数。
_.isNumber
要么
_.isFinite
(取决于您是否希望将 Infinity
和 NaN
归类为数字)
简单问题:如何在 coffeescript 中测试一个变量是否引用了一个数字?无法在 docs.
中找到答案严格来说,您可以使用
测试变量类型(这似乎是您要问的)typeof n is 'number' and isFinite n
请注意,这不会转换字符串等,只是直接检查它是否已经是一个有限的数字。
你可以有一个全局函数:
isNumber: (n) ->
return not isNaN(parseFloat(n)) and isFinite(n)
并使用它:
is_number = isNumber('123')
它 returns true
如果参数不是 NaN 并且不是 infinity
。否则 returns false
如果您不反对使用库,underscore/lodash 提供了很棒的实用函数。
_.isNumber
要么
_.isFinite
(取决于您是否希望将 Infinity
和 NaN
归类为数字)