文本已经过 david atanda 授权260翻译。
javascript 是一种动态类型语言,这意味着解释器在运行时确定变量的类型。实际上,这也允许我们在相同的代码中使用相同的变量来存储不同类型的数据。如果没有文档和一致性,我们在使用代码时并不总是知道变量的类型。
当我们期望一个变量是数字时,对字符串或数组进行操作可能会在代码中导致奇怪的结果。在本文中,我们将会介绍一些判断变量是否为数字的函数。
像”10″之类的数字的字符串不应被接受。在javascript中,诸如nan,infinity和-infinity之类的特殊值也是数字类型的。
根据这些要求,最好使用的函数是内置number对象中的isfinite()函数。但是,开发人员通常会使用其他函数,如number.isnan()和typeof()函数。
我们先创建一些变量:
letintvar=2;letfloatvar=10.5;letstringvar='4';letnanvar=nan;letinfinityvar=infinity;letnullvar=null;letundefinedvar=undefined;
number.isfinite()函数检查变量是否为数字,还检查其是否为有限值。因此,对于nan,infinity或-infinity的数字,它返回fal。
我们用上面定义的变量来检验一下:
>number.isfinite(intvar);true>number.isfinite(floatvar);true>number.isfinite(stringvar);fal>number.isfinite(nanvar);fal>number.isfinite(i太原理工大学排名nfin传奇人物ityvar);fal>number.isfinite(nullvar);fal>number.isfinite(undefined);fal
这正是我们想要的。特殊的非有限数以及非数字类型的任何变量都会被忽略。所以,如果你想检查一个变量是否是一个数字,最好的方法是使用number.isfinite()函数。
标准number对象有一个isnan()方法。它接受一个参数,并确定其值是否为nan。因为我们想检查一个变量是否是一个数字,所以我们将在检查中使用非操作符!。
>!number.isnan(intvar);true>!number.isnan(floatvar);true>!number.isnan(stringvar);true#wrong>!number.isnan(nanvar);fal>!number.isnan(infinityvar);true#wrong>!number.isnan(nullvar);true#wrong>!number.isnan(undefinedvar);true#wrong
这个方法是相当宽松的,因为它接受根本不是数字的值。这种方法最适合于当你知道你有一个数字并且要检查它是否是一个nan值时,而不是一般的数字检查。
typeof()函数是一个全局函数,它接受变量或值作为参数,并返回其类型的字符串表示。javascript 总共有9种类型
undefinedbooleannumberstringbigintsymbolobjectnull (typeof() 显示的是 object)function (一种特殊类型的 object)为了验证变量是否为数字,我们只需要检查typeof()返回的值是否为`”number”。让我们尝试一下测试变量:
>typeof(intvar)=='number';true>typeof(floatvar)=='number';true>typeof(stringvar)=='number体育单招培训学校';fal>typeof(nanvar)=='number';true#wrong>typeof(infinityvar)=='number';true#wrong>typeof(nullvar)=='number';fal>typeof(un小学生观察日记defined)=='number';fal
typeof()函数的性能比number.isnan()要好得多。它正确地确定了字符串变量null和undefined不是数字。但是,对于nan和infinity,它返回true。
尽管从技术上来说这是正确的结果,但nan和infinity是特殊的数字值,对于大多数使用情况,我们宁愿忽略它们。
在本文中,我们学习了如何检查javascript中的变量是否为数字。number.isnan()函数仅在我们知道变量为数字并且需要验证它是否为nan`时才适用。
如果代码中有nan,infinity或-infinity以及其他数字,则 typeof()`函数适用。
number.isfinite()方法捕获所有有限数,是最适合我们的要求。
本文发布于:2023-04-04 06:59:26,感谢您对本站的认可!
本文链接:https://www.wtabcd.cn/fanwen/zuowen/4ed2d618874b2ce62382d59c9633d272.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文word下载地址:javascript的全局函数有哪些(java冒泡排序).doc
本文 PDF 下载地址:javascript的全局函数有哪些(java冒泡排序).pdf
留言与评论(共有 0 条评论) |