00:00
哈喽,大家好,这个小节呢,我们来介绍一下ES6里边儿的数值扩展。首先第一个呢,是。这个APP呢,是number里边一个属性,这个属性呢表示一个非常小的数。啊,这个值呢,它接近于2.22乘以十的负十六次方。也就说是小数点后16位的一个很小的数。那么这个数呢?是javascript表示的最小精度。什么意思呢?你比如说我有两个数。比较他们谁大谁小。那么如果说它们两个的差值要是小于这个number.ab这个非常小的数,我们就认为它们两个是相等的。就是你只要你们两个的差值小于这个数。你就表示你们两个相等。这就好比我们去。啊,小卖铺啊买东西是吧,然后呢,有些时候比方说哎呀50块零两毛对吧,然后呢,把这两毛抹了吧,是吧,那么这个时候我们就认为50.2,然后呢,就等于这个50。
01:10
当然是在老板的角度来看啊,就是50.2,那行了,这两毛我不要了是吧?啊来给50就行。这么一个道理,那么这个东西有什么用呢?它主要是用在这个浮点数运算上面。啊来去对这个精度呢,做一个设置。因为咱们知道浮点数运算是有误差的。举个例子,Consult log。啊,来一个0.1,然后加上一个0.2。保存看结果,这个结果是0.3004。啊,也就是说这个结果它是不等于0.3的。这是不符合我们的常规认识的。啊,但是咱们咱们这个时候可以借助于number AB呢来把这个问题解决,我们可以呢声明一个函数一括,然后呢,A逗号B判断两个数值是否相等。
02:04
好,然后呢,我们来做一个判断,如果。啊master.aba减B,求它们两个差值的一个绝对值,要是小于了number点啊,Action。就是你们两个人之间的一个差值小于了这个误差,咱们就认为你们两个是相等的,我就返回一个处,反之呢,我们就返回一个false。好,接下来咱们通过这个函数。来验证一下这个结果。Log,然后一括括弧0.1加上一个0.2,好,这是第一个值,然后呢,第二个值0.3保存看一下。你可以看到咱们通过他所得到的一个结果是一个为真的。好,这是。下边呢,这个是二进制和八进制,它引入了这两种数值表示方式啊,Let这个B啊,二进制的表示方式是0B后边根啊1010啊那些数值就可以了,那么这个数呢,它表示的十进制呢为十。
03:16
看一下十啊二的三次方加上二的这个一次方,好这是二进制,然后下边呢是这个八进制啊,八进制呢是0O开头后边写777是吧,哎,这是之前比较火的那个老虎机是吧,重点的一个号码777。好了,保存看结果511,好,这是八进制,然后当然还有十进制啊,十进制的话,咱们写一个D等于一个100分,哎,啊,给我来D保存看结果100,还有呢,16进制,Let,这个X等于个0XF。这个数呢表示是十进制的255,看一下。
04:02
好,这是二进制和八进制的一个表示方式啊,呃,当然还包括咱们又顺便说了一下十进制和16进制。然后下面这个方法呢,是is检测一个数值是否为一个有限数啊,Log来个number。然后点is flat括弧啊,咱们来一个100,这数有没有限呢?保存它有限。啊,然后呢,100除以零它有限吗?保存看一下它无限。啊,它不是一个有限数,做反问结果是一个false,当然咱们还可以把那个无穷啊infinity拿过来保存,它也是一个无限数,并非是一个有限数,所以说反问结果是一个false。好了,这是is,下边呢是is n na啊,这个方法呢,用来检测咱们这个数值到底是不是一个n na啊,比如说我写一个E23,看下结果,看s log啊,其实之前的ES5里边呢,这个a is nnn啊,是一个单独的函数,不过呢,在ES6里边呢,把它作为了number里边的一个方法啊,这样做的话更方便于开发者去检查文档啊,查查阅文档,你是一个新的开发人员,对吧,你是之前做别的语言的,然后你第一次来使用GS啊,你想诶,检测这个数值是不是n nan,这是跟数字相关的,那我们正咱们常规的意思就是去number这一个系列里边去找答案。
05:38
啊,然后呢,一看,嗯,有这样咱们就可以拿过来,所以说查阅温的查阅起来的话呢,会比较容易一些。OK,这是na,下边的话是一个pass和pass float,那么这两个之前也是一样,它们是单独的一个函数,在这呢,把它们放到number下边,作为一个方法来使用啊,作用的话跟原来一样,就是把一个字符串转化为一个数字,看一下啊,写一个52113E4啊love。
06:10
啊,在前面呢,我们调用一下这个number.pass。好看结果看一下Y11314,它会截断啊,浮点数这块也是如此啊,好拿过来我们这写一个pass float啊,下面的话写一个53.3.1415啊92926啊神奇啊神奇。啊,三点保存看结果啊,它也会截取只passlo好,那下边这块呢,是一个is integ来判断一个数值是不是为一个整数啊横log number.is ineg括弧写个五啊,再再写一个2.5保存看一下,上面这个为整数,下边这个不为整数。
07:04
OK,然后下边这个math点串是吧?它是将数字的一个小数部分抹掉,好举个例子,Consult log来一个mass.t括弧啊,把这个3.5拿过来保存,看结果三。把小数抹掉。好,那么下边还有一个是mass.s啊,检测一个数呢,到底是正数负数还是0CAN log mass.s里边呢,我写一个100。然后呢,里边写一个零,再来一个负2万。啊,来个负2万。保存。大家看一下啊,如果说你是一个正数,它返回结果唯一,如果说你的这个参数是一个零,它给你返回一个零。那如果说你这是一个负值啊,它这会儿就会返回一个负一。
08:01
好,那么这个小节呢,关于数值的一个扩展,我们就先介绍这么多。
我来说两句