00:00
我们这说的是一个这个数据类型,说的是这个string啊string那这块刚才有的同学可能会可能看到我这么写,有点这个看不明白,就是怎么写的,咱们举个例子吧,我这来创建一个新变量,挖一个STR2,我这是生明一个变量啊,然后等于一个hello,我在干嘛呀,我是不是在将这个哈这个变这个值赋值给STR2这个变量啊,哎,就跟什么呀,就跟我们这写数学题的时候设。哎,小明的这个身高,哎是X是不是这么一个一个意思呀,诶设小明的身高是X,只不过这呢,我们我们干啥了,我们是不是直接就给它赋值量,哎,那这块呢,小明的身高就是我们的X值,那现在干嘛呢?我这块是声明了一个变量叫str,并且是不是把这个值赋值给他了,这能看懂吗?哎,来,那我这再来一个STR2等于一个你好,那这能不能看懂?能看到。
01:01
我是不是就修改这个变量的值了,这变量明的时候给他值哈,那现在干嘛呢?我是又给他了一次值啊,那问你哪次值有效啊,是不是第二次啊,谁在下边是不是有谁有效啊,等于是干嘛呀,我把SR2的值变成了你好吧,哎,我再来一个来什么呢?STR2等于个三,我是把它值变成三了呀,哎,我可以任意的去修改这个值吧,哎,任意的修改这个值,所以注意啊,这是干嘛呀,我是最后这次有效,那注意了,我这还用不用写Y了。用不用写Y了,注意万只在什么时候用声明变量的时候写不我在这用的时候,我这变量是不是已经声明过了,声明过了你还用不用写了,就不用写了啊,就不用写了,跟你做应用题似的,你只有在什么呀,在你应用题的最开始,你是不是才设这个X呢?然后往后你还用不用设了,就不用设置了啊,最后最开始才用设置,所以注意这个Y我们写一次就行了,对这str写一次就行了,不用再去写了啊,然后呢,这你写上呢,其实也也不会给你报错,但是尽量的不要去写它啊,只声明一次,但是注意了啊,这只说只声明一次是什么呀,说的是S加二,如果你再一个变量STR3呢,你还得接着接着写啊,还得接着写,你们学这东西的时候吧,灵活一点啊,活一点就是我给你说这句话吧,他不可能把每一个细节我都给你干嘛呀,我都给你说完了,我跟你说完咱们这课没完没了了是吧,没完没了了,所以有的时候你们要灵活一点,我说的是这个东西只在第一次时候声明时候使用是什么呀,只。
02:38
在我STR2这个变量第一次声明的时候,如果是STR3你干嘛呀,你还得写啊,你还得写啊,所以注意啊,变量只在什么呀,声明的时候用写Y,其他的时候都不用再去写,写棒啊写棒好这是一个啊,刚才还有同学呢,就是就是我发现你们学咱们直接说这个问题吧,是什么问题啊,有同学是这样写的,可能这来一什么呢?来一个这个alert alert来一什么呢?来一个这个hello,诶hello,你可能再写一长点,你好,然后这写什么呢?写一个这个cancel点唠唠一什么呢?唠一个这个诶唠一个诶我就是不出来,我就是不出来写这么一句话啊,然后一保存,我们在外部浏览器里运行,在我们火狐里运行一下,我这一刷新。
03:24
很多很多同学可能会遇到这个问题啊,很多会可能会可能会遇到这个问题,点开我这firebug干嘛呢,还不出来了。点开我们的fire bug是不是控制台啊,来我这刷新一下,诶,诶控制台怎么没有东西啊,我们还在刷新诶。诶没有东西,怎么没有东西啊,为啥没有东西啊,诶你注意了,它的执行顺序是先执行alert,再执行canl.log吧,诶他是干嘛呢,他一直等你点它呢,是吧?诶他等你点它你就。点它一下不就完了吗?哎,你点它是不是才出来呀,所以注意只有在什么,它是顺序执行的,你得在59行代码执行完了以后,我们的60行,61行是不是才会执行啊,哎,才会执行,所以干嘛呢,人家跟这一直等着你点着呢,也就是说他这这行代码执没执行完呢,没执行完呢,这行代码什么时候执行完,你点这个确定按钮才执行完呢,那这一行代码执行完了,我们这第61行还还会执行啊,所以人家等你点呢,你就你就点它一下对吧,是不是就出来了,哎,所以这块啊一定要注意啊,一定要注意好,这是一个一个小问题是吧,咱们就补充一下啊好,咱们就不说了啊,然后接下来我们接着来说我们这个数据类型,刚才我们说了一个这个string啊,String接下来呢,我们来说一个什么呢,下一个。
04:51
零二我们叫做一什么呢?叫做一个number number什么意思呀?诶数字是吧?诶数字啊,数值类型我们来说一下,叫做一个这个number,诶在我们这个GS中所有的这个数值,所有的数值都是什么呢?都是我们这个number类型,所有的数值包括什么呢?哎,包括我们的什么呀?哎,整数,哎整数只整整数数,整数和我们这个浮点数。
05:25
什么叫浮点数呢?就是有点的数,什么数有点啊小数,诶所以说浮点数呢,就是我们那什么呀,小数,但是我们计算机里边一般都称为什么呀,浮点数啊,浮点数整数和这个浮点数都是什么呀,Number类型,比如说我这来什么呢?来一个Y一个这个A等于一个123,那现在A就是什么呀,123了,直接来一个cancel点一个log,来一个A,我一保存是不是123呀,然后注意啊,你每次输出完了呀,你再输出它会干嘛呀,把这上次结果会给你保留的,它不会给你清的,你每次刷新是不是都在保留啊,所以如果你不想要上次结果了,这有一个这个玩意儿,你咔一点给他干嘛呀,给它清了啊,给它清了,然后呢,我这再来一个A等于一个456,我这一保存走,你是不是A就变成456了呀,所以注意啊,我负值是什么呀,后边那个有效吧,后边这个是把前面那给它覆盖掉了啊覆盖掉了这是我们说这个整数,那小数呢,456.789,这是什么呀。
06:25
小数吧,哎,浮点数,我这一保存是不是456.789啊,哎,然后你要再写别的七七,再写一个789.1个678这玩意儿干嘛了?哎这就不认识了吧,所以注意啊,叫有效的数字整数或者什么呀,小数啊,整数或者小数都可以使用这个number好,那现在我要问你一个问题了,我这有一个A是123,我还有一什么呢?还有一个Y一个B叫做什么呢?123,诶我问你这俩这俩一样吗?我来输出一下,第一个是A,第二个是B,我们一输出一保存一看,诶一看结果是不是都出来的是123呀,但是他们俩一不一样,诶这个是我们什么呀?数字123这个呢,是我们的什么呀?哎,字符串123只是看起来很像,但是实际上他们是什么呀,两个东西吧,哎,两个东西,但是问题来了,我这现在一看,我一。
07:25
打印AB都是123,我这样能不能区分到底它是数字还是字符串啊,是不是区不出来呀,我这一看,你告诉我这两个123哪个是自符串,哪个一哪个是自符串下边是吧?你们看我打了是吧?诶这个东西正常来,正常人根本就圈不出来是吧?哎,正常人根本圈不来,你们区分出来吗?哎,圈不出来是吧?那现在我们要怎么去区分的呀,怎么去区分的呀?那我们是不是想一个招啊,诶想一个招,所以呢,在我们这个GS里干嘛呢?还给我们提供了一个什么呢?诶我们可以使用一个运算符啊,我们提前说一个运算符可以使用一个,这个运算符叫什么呢?那叫做type off type什么意思呀?诶类型啊,Type of干嘛呢?来检查一个这个变量的这个类型啊,来检查一个变量的类型,那我们来说怎么检查,哎,我们来说一下它这个语法,语法是怎么写的,要做什么呢?Type of后边跟的是一个这个变量啊,Type of后边跟的是一个变量,那比如说我想检查这个A的类型干嘛呢?我直接就是type of a就行了,这表什么呀,检查这个变量A的类型,但是你这么写是没有意义的,为什么?因为你没有把结果输出吧,诶,所以干嘛呢,你来CTRLX,我们来一个cancel,点一个log type of,一个A,表示检查我们这个A的。
08:55
类型我这一保存走你是number啊,诶检查类型并用输出A是一个number,是不是123呀,诶是一个数字来,那我们再看type of b,我这一保存是不是string啊,哎,String,而且注意它们都是小写字母开头的啊开头的,所以这里边我们说可以使用type of检查一个变量类型,当检查我们这个字符串时会什么呢?诶会返回这个string检查我们这个,诶数值是会什么呢?诶会返回我们这个,诶number注意都是小写的啊,返回的是这个,诶类型啊,就一个type of,那这块我们就不多说了啊,这个太B了啊,我们经常会用啊来检查一个变量的一个类型,好,那先给它住了,现在我一个变量是A等于一个123,那我们现在来看了它可以干嘛呀?GS中的所有数值都是number类型,它可以表示这个整数和浮点数和这个小数,那我们说了,那这数字它有没有。
09:55
头啊。有没有哪个数,你说这是我这个全世界。
10:00
最大数,如果你说有这么一个数,我直接给它加一,我是不是就比它大了对吧?那我们说了,那我们这个GS里边数字是不是可以表示出无限大呢?诶是不是可以表出无限大呢?诶我们来说一下啊,咱们直接来看我们这个什么吧,咱们这么看吧,在我们这个GS里边有这么一个东西,直接来干嘛呢?Cancel,点一个叫什么呢?Cancel log点一个,我们有一个东西叫什么呢?Number number是不是表示我这数字啊,它一个值叫什么呢?点啊,咱们先记住这么用,点一个叫做一个ma max max什么呢?Value,点一个max value这个表什么呢?这个是我们GS中可以表示的什么呀,最大值,诶,GS中可以表示我们的这个什么呀?数字的这个最大值是多少呢?哎,就是这个my number点一个max value,那这值是多少呢?我们来看效果啊,这一保存我直接是不是给它输出了,诶一保存走你。诶是不是这么一个值啊,哎,这么一个值来我给它粘过来值呢,实际值是这个,那这个实际上是什么呀,相当于是一个,诶一个常量在保存着这个值,这个值什么呀,什么1.79769,什么乱七八糟是吧?然后呢,后边E加上308是什么意思呀?是不是科学记数法呀?诶说白了就是什么呀,是不是十的308次方呀?哎,再说具体一点就是一后边一共308位啊一后边一共308位,这是它可以表示什么呀,最大值了,再大就更嘛了。
11:34
不能大了啊,这是它的一个最大值,但是这个值呢,我一般干嘛呀,咱们一般超都超不过去啊,哎,十位可能我都不好数了是吧?哎,十位都不好数了,所以这块呢,值已就就已经干嘛了,很大了,哎,值已经很大了,诶那我说了,值再大是不是也有比它大的呀?诶那怎么就比它大呢?我直接来一个什么呢?number.x来个嘛呢,来一个乘以点ma value我干嘛呀,我给你取一个平方吧,你最大值我给你取一个平方,那是不是远远超过你最大值了,那我们说了,那它在这里边怎么去表示这个值,我们来看看啊,来个A等于它,我是不是让A等于这个结,哎,这个星号我没学过是吧?呃,提前说一下,星号在这边表示什么呀?表示乘啊,表示乘法表示什么呀,让这两个值相乘,求它们的什么呀?积,我这个意思就是什么呀?让他们俩相乘,求这个积,并将它们这个相乘的结果赋值给我的这个变量A啊,变量A,那所以我们来看看这A是啥。
12:34
A是最大值的平方,那这个值它会怎么表示呢?来,我一保存走你诶叫什么呀,叫做infinity infinity什么意思呀?诶叫做无穷的叫什么呀?哎,无穷啊,所以这里边我们来说如果什么呢?如果如果表示的这个数字,如果使用我们这个number表示的这个数字超过了什么呀?超过了我们这个最大值则什么呢?则会返回一个什么呀,叫做。
13:08
尹非你迪啊,引非迪表示什么呢?它表示叫做一个正正无穷啊正无穷,说白了,GS1看这数啊,我算不过来了,这个数呢,你比太大了,在我这认为就是什么呀,就是无穷大了啊就咱们咱们是不是有这么一个这这玩意儿是吧?哎,无穷啊表示一个这个正无穷啊,最大值就是什么呀?哎这个infinity那最小值呢,其实你可以说什么呀,叫做一个一保存,我是不是给加一负号啊,哎,这一保存是什么呀?哎,负的in菲尼啊负的in菲尼迪,In菲尼迪表示一个这个正无穷啊正无穷好,那接下来我们再来看啊,In菲尼迪表示一个正无穷,但是你要注意啊,这个in菲尼迪是个什么玩意。是个字面量,什么意思?你来看我可以这么写,来个什么呢?来个A等于这个infin,你看我直接这么写了,我有没有加字符串,没有加字符串,哎,没有加这个双引号,为什么?因为它就是一个什么呀,字面量专门用来表示正无穷的,哎,我们来看它报不报错啊,我已保存,是不是依然可以正常使用啊,哎,正常使用啊,所以注意一定要注意是这么写的,你千万不要干嘛呀,加双引号,加双引号是不是变成字符串了,哎,所以注意啊,In菲尼ity就是一个这个字面量啊,就是字面量,诶,那我们来看了,现在A的值是一个什么呀?是不是一个infinniity啊,Infinniity来我看这啊,我来行么呢?来一个type of a,我是不是检查这个infinite类型啊,诶,那我们说它的类型应该什么呢?我以保存是不是也是number啊,诶也是number啊,所以注意我们叫什么呢?使用我们这个什么呀?诶type of检查我们这个infinniity,诶也会返回什么呀,诶。
14:50
Number啊,Number infinniity表示我们这个正无穷,咱们再给它写完整一点啊,Infinniity表示正无穷,还有一个叫什么呀,负的infinity表示什么呀?负无穷啊,负无穷这块我们就不废话了啊,都这么一个特点啊,正无穷一个是这个负无穷啊负无穷好,那这个呢,是我们说的这个。
15:09
Infinniity,还有一个负的一个infinniity啊,然后呢,接下来我们再来说,再来说呢,还有一个就是一个还有一个特殊的值,我们再来看啊,这里边还是我让A干嘛呢?A等于一个,我们说了星号是不是乘法呀?诶我来一个ABC。乘以一个BCDABCBCD是什么玩意儿?是不字符串啊?哎,我让两个字符串去相乘,那谁能告诉我ABC乘以BCD的结果是啥呀?哎,谁也不会算这玩意儿是吧?这玩意儿谁要能算出来也算了不起了是吧?哎,所以这东西呢,你给GS呢,他也不会算,他也不会算,但是你是不是让他算了呀,你一旦让他算了,他必须得给你返回一个什么呀,返回一个结果,那我们来看看他给我们返回一个什么结果来,我这一保存走你诶,还有什么?难,难什么意思呢?诶难我们来说一下这个什么呢?难它是一个什么呢?诶它也是一个数字,是一个特殊的,这个数字表示什么呢?表示的是not,呃,Number啊,它叫做一个not number告诉你什么呀,不是一个数字,说白了诶你不让我算吗?我给你算,我算完了结果是什么呀,不是数字,哎给你这个结果了,说白了就什么呀,它不会算了,给你返回这么一个东西啊,叫做一个那not啊number,那现在的A的值是不是就那啊注意一个这个,那和这个in菲尼类似,它也是一个字面量,你说你可以这么写,A等于个什么呀,那直接写还是千万不要给它加什么了,引号了,加引号变什么了,字符串了啊加引号变成字符串了,那我们来看A的值是,那我们来看看,那你说我这一个type of a,它的类型是啥?嗯,它类型是啥,它是一个非数字,但是。
17:00
那注意它的类型呢,也是number啊,也是number,所以这块要注意使用什么呢?使用我们这个type of检查一个什么呢?这个那也会返回什么呀,Number啊,也nu一样啊,也会返回number啊,注意这个N是小写的啊,返回的值这个N是小写的啊,所以注意使用我们这个type of,检查我们这个nu还有infinity都是number,都是number,但是你要注意了,如果干嘛呢?我给这个nu套一双引号,它反应的还是不number,我已保存什么玩意,哎,死润了啊死润了一定要注意啊,这双引号什么时候加,什么时候不加啊,什么时候加什么时候不加好那这块呢,是我们说的一个这个诶那还有一个啊,还有一个我们也是顺便看一下,我们知道这个number有一个max value6,这是我们这个最大值,实际上还有一个什么呢,诶最小值,其实最小值呢,你能猜到了就应该什么呀,负的这个,哎,负的这个,但是它这。
18:00
它最小值呢,不是这个意思啊,它这什么呢?哎,咱们来看看值是啥啊,值是啥,直接来什么呢?还是什么来输出A吧,咱们把它注了,直接来一个A等于一个什么呢?叫做number,点一个mean value,诶我们来看它的最小值啊,我来一个cancel,点一个log,一个什么呢?诶我容易保存,咱们来看效果走你。首先这是这是复数吗?不是负数吧,明显是个正数,所以它不是我们理解那个最小值,这是什么呢?这是零以上的什么呀?最小值啊,零以上最小值可以理解成什么呢?它可以表示的最小的那个什么呀?小数啊,正小数,这是什么呀?这是E的什么呀?负三百二二十四就是什么呀,零点零零零零零零零三百多个零是吧?诶300多个零这么一个效果啊,这是什么?它这个最小值,零以上的最小值,说白了它小数点后边可以有300多位是吧?诶0.000,但是这个东西的基本上是什么呀?因为咱们用不到那么小对吧?诶用不到那么小啊,所以注意number点一个这个min value6,这是一什么呢?这是一个这个5亿,诶这个负34,注意啊,这都是什么呀,科学计数法啊,K计数法,这是什么呢?这是我们这个零,哎,零叫做大于零的这个,咱们这么写大于零的最小值。
19:27
或者叫什么呀,最小的这个正值啊,最小的正值啊,好,这是我们说的一个mean value max value这么几个啊,然后呢,Number其实主要说就说这么多了,Number首先最大值最小值也说了啊,然后呢,它的无穷叫做一个inin,负inni,正无穷负无穷,还有一个是难是一个什么呀,特殊数字啊,非法的数字,但是这里边我们还要说一种特殊的东西啊,咱们来说什么呀,既然涉及到了,我们是不是就要这个计算呀,诶我们肯定要去计算啊,比如说我来一什么呢?来一个bar,一个这个咱们上边升的什么B啊。
20:02
是不是币了啊,我来一个Y,一个这个C等于什么呢?等于123加上一个456干嘛了?Cancel log c,我是不是输出C啊,那C的值应该是多少?是不是123加上四六的这个和呀?那我这句话意思是干嘛呀,将123加456的结果赋值给变量C啊,变量C我这一保存走你诶。579是不是算对了呀?诶你看咱们这个GS是不是很聪明啊,诶这玩意儿都能算是吧,很厉害,来咱们换一个换一个这个1865789,咱们来一个什么呢?诶7654321,咱们来看看能不能算啊,我这一保存走你诶是不是算出这么一数了呀,诶跟我算的是一样的是吧?我算的一样的啊,所以这里边注意呢,我们说了在我们这个GS里什么呀,这种整数的这个运算在我们这个GS中什么呀?哎,整数的这个运算基本可以保证什么呢?保证这个精确啊,基本可以保证精确,你别说太长了,好几十位,四五十位,那这块它可能干嘛了,可能就出问题了,小我们常用的这种个数,他算的时候呢,基本上都没有问题啊,都没有问题,但是我们来看看有没有什么有问题的,来什么呢?挖一个C等于什么呢?呃,0.01加上一个零点。
21:27
嗯,二算这么一个东西,这这咱们是不是眼睛看出来了,0.00.03吧,诶来我一保存走,你完了他怎么也算出来是吧?来那这块呢,我还找一个数换一个数,换一个0.1加0.2,完了这数还想不起来了,诶多写一零是吧,0.1加0.2,那这个我们算是不是应该0.3呀,但是我们来看它算的结果是什么呀。0.3,然后后边000000,然后多了一个什么呀,四那我们先说这结果对不对呀,不对吧,你多一点,他说也不对啊,哎它也不对,所以这里边我们来说什么呢?呃,如果什么呢?呃,使用我们这个GS什么呀,进行我们这个小数,哎叫做浮点数运算,哎可能什么呢?哎可能得到一个什么呢?哎错误的结果,哎不一定是错误做到一什么呢?哎,不不精确的一个结果啊,不精确的一个结果,那这个是为什么呢?这个不是GS1个人的事儿,这个呢,所有的语言。
22:34
都有这个问题啊,所有的语言都有这个问题,那你想像什么呀?在我们十进制里边,我要表示一个这个1/3能不能表示啊。诶,我要用一个数表示,能不能表示啊,不能吧,因为十除以三是不是除不尽啊,老是0.433333这么一个东西啊,诶除不尽,所以表示不了这个东西,同样在我们二进制里,你要注意我们的运算最终是不是都要转换成二进制运算呀,二进制里边是不能表示。
23:01
1/10的啊,不能精确去表示1/10的,所以这种浮点数运算在二进制里干嘛呀都是不准确的,所有的语言都有这个问题啊,所有的语言都有这个问题,但是呢,别的语言都有办法解决,GS这个暂时不好解决,那当是不好解决,那同学说了,诶老师你把这后边这东西都给它舍了不就完了吗?哎,一般情况下我们都可以去舍啊,一般情况都可以舍,但是什么时候就不能舍了,千万不要涉及到,涉及到钱,一般情况下我们都敢给他舍,千万不要涉及到钱,这钱呢,你给谁舍多少食少是不是都不合适啊,尤其是什么呀,你说这这这叫啥钱呀,是吧,这叫啥钱,这是不是你这你往这一点是没没多少钱呀,但注意了,你现在量少呢,等你量多了以后,虽然这个小数点后边很小,但是你这个倍数多了以后,是不是钱也不少呢,哎,钱也少呢啊,所以注意我们使用GS进行浮点运算,可能得到一个什么呀,不精确的一个结果,所以什么呢?所以在我们这个,诶,所以就是。
24:02
千万啊,咱们不是尽量千万不要使用我们这个GS进行什么呢?叫做钱钱诶或者不一定是钱进行什么呀,进行对这个对这个精确度诶要求比较高的这个运算,诶千万不要对它进行这个运算,因为可能干啊,你可能给它算错了,那这个运算尽量放到什么呀,我们的服务器里边去算啊,尽量不要在这个页面里算,因为算的时候可能会嘛啊出现一个错误的这个结果啊,错误的结果好那这一块,但是整数呢,基本是没问题的,整数你不要太长了啊,你说四五十位了,可能它也会出现一些小问题,但是呢,这种位数呢,都没啥问题啊,都没啥问题,好,那这个呢,是我们说GS里边的一个number类型,再来回顾一下啊,Number整数不点数都是这个number最大值number.max y6,最小值number,点一个m value6啊,都是这个大于零的啊,然后呢,我们说了这个什么呀,诶还有两个infinity负的infinity表示我们这个正负。
25:02
哦,无穷还有一个难表示一个什么呀,非法数字,但是一定要注意我上边所说这东西,他们用type of检查,返回的都是number啊,返回的都是这个number啊,然后再来说就是什么呢?我们这个type of运算符用来检查一个变量的一个类型的啊,检查变量的一个类型的,还有呢,就是我们这个运算的一个精确度问题啊,你要记住了,千万你涉及到精确运算的,尽量就不要用减的算了,尤其是涉及到小数了,千万不要用减啊,会有问题。好,这里边呢,我们来听一下。
我来说两句