作为一个还在学习的前端小码农,昨天刚刚学习JavaScript中的数据,由于在和同学讨论其他的问题,老师讲的记得有点小模糊,于是自己动手码代码做实验,然后又在网上翻了一些资料,对于字符串与数字、数字与数字、字符串与字符串之间数字的比较进行啦一些较为深入的了解,在某些地方,理解的有欠妥的地方,还希望各位大神指教。
**1.数值型数据中的数字之间的比较**
在数值型中,其比较大小的方法就和我们平时的数学方法一样,这一点没有什么难理解的地方。
下面举一个例子作为说明:
<script> alert(89>90); //false; </script>
例子中“89”和“90”都是数值型的,按照我们平时所认知的大小进行比较,所以此段代码返回是值是false;
**2.字符串型数据中的数字之间的比较**
字符串中的数字之间进行比较和数值型的数字之间的比较不同,字符串中的数值的比较是根据ASCII码来进行比较的,首先比较字符串的第一个数字,如果第一个数字可以比较出大小,则字符串的第一个数字较大的那个字符串比较大,如果第一个字符串比较不出大小,则将字符串中的第二个数字进行比较,然后分辨大小,以此类。
下面写一个案例做分析:
<script> var a="56"; //定义一个变量a,给其赋值一个字符串类型的数字“56”; var b="59"; //定义另外一个变量b,给其赋值一个字符串类型的数字“59”; alert( a > b ); //根据上述所说的比较方法,第一个数字无法比较出大小,则进行第二个数字的比较; //通过第二个数字的比较,我们可以得出 b>a ,所以此段代码打印出来的结果为false; </script>
<script> var a="7"; //定义一个变量a,给其赋值一个字符串类型的数字“56”; var b="59"; //定义另外一个变量b,给其赋值一个字符串类型的数字“59”; alert(a>b); //根据上述所说的比较方法,先进行字符串中第一个数字的比较,a变量的第一个数字是“7”; // b变量的第一个数字是“5”,经过第一个数字的比较,我们可以得出 a>b 的结果,所以aler //t出的结果为 true; </script>
**3.字符串型数据中的数字与数值型数据中的数字之间的比较**
在字符串型数据中的数字与数值型数据中的数字做比较的时候,因为是两种不同类型的数据,不能直接做比较,其内部是将字符串型的数值转换成数值型的数字,然后再进行数值型的数字比较。
<script> var a=7; //定义一个变量a,给其赋值一个数值类型的数字“7”; var b="59"; //定义另外一个变量b,给其赋值一个字符串类型的数字“59”; alert(a>b); //经过内部将a变量的数字转换成数值类型的数据,然后进行数值型的比较,则可以推断出aler //t出的结果为 false; </script>
第一次写技术博客,写的不好的地方还请大神指点,作为一个前端的小码农,小虫会不断的学习,写完可以和大家分享知识,交流技术。