00:00
来,咱们到哪了呢?好,该数据类型。没有类型数据它得有类型,你变量没有数据类型,你只有没有数据类型不,你等号后边这个值有没有类型啊,所以每门语言它都得学类型啊,这个类型是必经之路啊,你这个对你的数据类型你得学。就你不要说就说啊,我们这个没有数据类型啊,是不是不不是这样,不是这样啊。你这个变量虽然没有数据类型,但是我们后面还有个值,值,它是有数据类型。啊,这块咱们还得还得知道啊来,那咱们就接着再往下看了。关于JS中的什么?数据类型。
01:02
嗯。简单学一下这个数列型,各位啊。虽然JS中的变量在声明的时候怎么着不需要指定什么数据类型啊,但是在赋值的时候,每一个数据啊还是有什么类型的啊,所以这里也需要学习一下JS包括哪些数据类型好。他GS包括哪些数据类型呢?老师,是不是也是基本数据类型和引用数据类型呢?
02:00
不是这个呢,不叫基本数据类型啊,人家叫原始类型,对原始类型和引用类型。JS中啊,数据类型啊,有什么呀,有原始类型。还有引用类型。对,原始类型英雄,他就是起的名不一样。啊来我们看原始类型,我们看直接直接看它几种类型就行啊。他这个ES叫script,简称什么ES啊,ES6。指的是SCRIPT6版本。ES6之前。
03:02
它的数据类型和ES6之后的数据类型不一样。ES是啥呀,规范啊。来ES6版本之前的数据类型有六种。安理发的numbers do none bulling和object。ES6版本之后包括的数据类型有七种,这七种类型多了一个叫symbol。Symbol。分布类型,这是一种类型数据类型啊。我们现在不用管这种类型,各位啊,先不用管这种类型,咱们就看这几种类型,叫六种类型,Number object。来。
04:00
数据类型原始类型和引用类型,原始类型是谁number?玻璃。还有一个啊,Object object以及什么类,以及object的类。原始类型是这些。引用类型object以及类。GS的这个类型比较混乱啊,ES我先说一下说的是什么玛script。
05:05
ES规范就是script规范啊。在ES6。之前。数据类型或者直接在ES6之后吧,又基于什么呀,以上的六种类型。啊之外有基于以上的六种类型之外,添加了一种新的类型啊,有印象,这种印象。我记着最近咱们这个,最近咱们这个挖课上好像上了这么一个东西。
06:00
看一下。嗯,你可以到时候看一下。哎呀,这个慢的呀。恩。Club。Docker。Double。My bad'plus。VE是刚上的各位啊,E刚上的,呃。找找啊。嗯,这个。ES6新特性。
07:02
ES6。啊。这是一个发展历程是吧,发展历程。可以看一下。他这边有没有提这个类型。这出新特性了啊。标题上没有写是吧。不用写啊,这个呢,肯定会会讲这个symbol symbol类型E6。ES规范啊,就是script的规范,在ES6之后,又基于以上的六种类型之外,添加了一种新的类型啊,然后再往下呢。这六种类型。各位。
08:02
你把这个名字记一下。啊。Number string,不,Now。然后是object object。那再往下呢,我们来看一下啊,就是说这S中啊有一个运算符叫做type of啊,这个运算符可以在程序的运行阶段动态的获取变量的什么数据类型。注意注意啊,有没有这个必要啊。运算符有没有这个必要?为什么Java都没有?为什么在加速当中有这种东西?你需要先思考这个东西。就JS中有一个运算符叫做type of,这个运算符可以在程序的运行阶段动态的获取变量的数据类型。
09:04
比如我现在有个函数叫function sum a,逗号B,那么接下来我问大家一个问题啊,假如说我这个函数是作用啊,是求和的,要求什么?A变量和B变量将来的数据类型必须是什么数字?不能是其他类型,你这件事怎么做?就这是求和呀,要求A变量和B变量将来将来的数据类型必须是什么数字,不能是其他类型,因为我这个sum函数只希望干什么,只希望做一件事,对吧,因为以下定义的这个sum函数啊。是为了什么完成两个数字的什么求和?有这种需求吧?
10:12
假如说这个函数是你定义的。别人去钓。你定义完别人在掉的时候,你是不是就管不住别人了?他跟Java不一样。Java如果定义一个方法叫sum,参数是int类型A和int类型的B。大家好好想一想,你在调这个方法的时候,你能给他传一个字符串进去吗?你得听话呀。在Java中,强类型的特点就是在编译期已经确定变量的数据类型。而在这个大括号当中,我也知道A一定是什么int b一定是什么int a和B1定都是什么int,在加法中我就是这么自信。说白了。
11:09
我是知道这个事儿的。这就是强类型语言的特点啊。是吧,但是呢,大家想如果到了JS当中。你定义这个函数sum的作用是为了求和,并且你希望A和B都是什么数字,但是你写完这个函数之后,你没有办法确保别人调你这个函数的时候就一定给你传数字吧。我再说一遍,就是你在JS当中,你这个函数定义完之后,你的目的是为了求和,求两个数字的求,求两个数字的一个和,但是你写完之后,别人去调的时候,别人可不一定听你的话,因为别人在调的时候,他可能传一个false啊,传一个什么呀,字符串ABC进去,那你这个也没问题啊,JS允许这种语法呀,对吧,但是我这个方法我现在就干什么,我就希望你给我传什么,传数字过来,你给我传别的,我这个程序理应给你报个错出来。
12:13
对吧。这个就用上了,因为这个type of预算可以怎么着在运行阶段动态的获取这个变量的什么数据类型,来我来说一下各位啊,Type of运算符的语法格式是什么?Type of后面跟什么变量名?就这么简单,Type of运算符的运算结果记住了,运算结果是以下六个字符串之一。注意,字符串都是全部小写,注意啊,Unde number three bull of function。
13:17
你别去拿着他跟上面这六个比比比比去了啊,别比了,对不上,这个和这个能对上吧,这个和这个是不能对上,这个和这个能对上,这个布尔和这个能对上,Object和它能对上,Function是不是和函数能对上,对吧,啊函数对。知道在讲什么吗?Type of运算的作用是啥?在程序运行阶段动态判断变量的数据类型,Type of用运算符怎么用?后边直接把变量名写上就就行了。type of运算运算之后结果是以下这六个结果之一,但是您一定要记住,Type of运算运算的结果是以下这六个小写的字符串之一。听懂了吗?来,再往下告诉大家,在JS当中比较中串使用双等号各位啊,在JS当中比较字符串是否相等,使用双等号完成没有eose?
14:22
听懂了吗?好,那么接下来告诉我怎么写这个衣服,什么type of a等于等于,并且type of b也等于等于。恭喜你,可以。对吧。程序到这儿,那肯定就有问题,程序能执行到这肯定有问题,如果程序执行这个是不是这个代码就结束了,Return语句一执行是不是方法不是函数是不是结束了,程序能到这,这说明这个条件是不是不成立,条件不成立,那就意味着这个A和B肯定有一个是什么,肯定有一个或是两个不是数字。
15:18
那你就告诉他。A。第。对吧,必须都为数字。Some。是不是有个结果?好,你告诉我这个程序的执行效果是什么?
16:08
应该是false逗号。ABC必须都是为什么数字这个是不是执行了,紧接着这个执行结束之后,我们大家如果这行代码执行,就意味着这个方法或者这个函数是直径结束之后没有返回值。如果执行这个的话,是不是代表这个函数它没有返回值,它没有返回值这个位置变量会系统负默认值叫什么安范,所以alert return value这个值是多少能理解吗?对吧,点确定,你看是不是你发的。这。
17:03
太棒,咱得会用各位啊。那如果说我现在演示一个正常的return value等于什么?Return value等于sum括号里边传一个什么,比如说一逗号二这次没问题了吧。最后把这个叫return value给它弹出来几呀300。这就直接就是三了,各位啊,刷新一下,走一个安迪范的,走一个三结束了。对吧,哎,这个主要啊是趁这个机会啊给大家呢,说说这个台运算符,我们一起来看看哎不复值。K附上值,F附上字符串,然后呢,再加一个D等于捺,然后呢,再加一个flag等于false。
18:08
行吧,然后123行,我们来看看啊开off谁哎是吧,可以吧。F8D是不是好开of flag好,各位看一下啊,每一个变量是不是都有值,都有值啊,这个变量的值是什么?按DeFine,因为一个变量值声明没有赋值,系统会默认给它附一个an DeFine的值吗?所以type of之后这个结果是啥带双引号的啊,我说了N多遍了,我不知道你有没有记住type of运算符的运算结果是六个字符串之一,这个结果是个字符串,而且都是全部小写的字符串,我这六个字符串的结果已经给你写出来了,而且我也告诉你字符串比较用双等号比较,所以这个位置用的是双等号,我觉得你应该能够理解啊,没有E口方法,没有E方法,各位再说一下来我们这块结果是什么?UN来type of运算运算法的结果,这个是多少?应该是number吧。
19:20
然后这个位置运团完成的结果多少,String这个地方的结果是多少,不知道啊,来这边的结果是多少啊玻,我说了六个结果之一,里边哪有啊。里面哪有呢?没有吧,没有啊,这个结果是。注意听。这个。属于类型。但type of运算符的运算结果是。
20:10
啊。记住,不解释解释不了。解释不了,你看一些资料上怎么说的,很多资料说这是Java最初设计的,留下的一个bug。他自己设计的本身就有问题,没办法,所以这块我不解释各位,这个还没有运行,我现在就告诉你none它的type of的结果是object,但是我告诉你none它属于这种类型。我再说一下,JS当中有六种类型,UN number stringing none,还有object。上边这四个都是原始类,上面这五个都是原始类型,下边这一个是引用类型。Type of运算符的运算结果,诶,有下有以下六种结果啊,然后都是小写的字符串,如果是type of DD是none,那么这个结果是object,记住啊,这个结果是object,但它不属于object,它属于类型。
21:18
这一点没办法不能解释啊,这个呢,我也给你解释不了。属于什么类型?但是type of运算符的结果是也不用记去故意记啊,这个东西没人问啊,没人问。因为这个呢,也没有价值。你会看到JS在这块的设计相当的混乱。
22:01
相当混乱,来安有了吧,有了吧,有了吧,Object有了吧,有了吧,来再来一个j new,一个什么object,然后type object,谁。O,笔记这个百分百是什么啊?对吧,然后呢,Alert,各位啊,我记我写一个函数啊,Function叫C什么hello,这是一个函数,各位注意听了,函数写完之后呢,我alert在这干什么?Type of say hello,注意只需要把函数名拿过来就行啊,Type of后面跟上这个名字,这个结果就是什么方。就是说用type of这个运算符啊,它这个type of啊,就上面这个跑哪了,就这个它可以在程序运行阶段动态的判断你这个数据的数据类型。
23:04
啊。De number,数字字符串,Object,不,Object function,如果你确实是个函数,确实c hello是个函数啊,那type of执行结束之后,这个地方是个方形。是一个函数,来,我们再走一下子。安。谁这个?然后再往下是,再往下是,再往下是object,是不是再往下呢,就是布。再往下是object,再往下是function。你把这六个结果记住。啊,那这个GS的数据类型我们还没有开始讲,各位啊,还没有开始讲,我们只是讲了一个什么,只是学习了一个type of运算符吧,那么这种类型,每一种类型具体咱们还得再还得再看啊,咱们下节课每一个类型咱们都挨着看一看。
24:16
咱们先休息一下。
我来说两句