00:00
下去说我们的这个内容,说我们内容呢,咱们这些我们说了我们这个对象呢,我们先写一个这个新的文件吧,我们来个零七,我们叫做一个数组,那这块我们来说一下啊,Script的标签,我们之前讲对象的时候,我们说对象分成三种,什么对象啊,叫做一个,诶内建对象,宿主对象,还有一个我们叫做自定义对象啊,我们说这么三种,那其实呢,我们这么长时间都在研究的是谁呢?都在研究的是我们这个自定义对象,也就是说对象是由我们自己去定义,自己去根据自己的需求去创建的吧,这种方式是最灵活的一种方式,也是什么呢?也是最麻烦的一种方式,所以在我们日常的开发中,这些自定义对象呢,并不是我们用的一个主流啊,不是,并不是我们主要用的用的一个对象,我们主要用的什么呀,可能还是我们这个内建对象和什么呀,宿主对象,当我们要接触到一些这种高级的开发。
01:00
的时候,我们需要用到一些什么呀,自定义对象,但是大部分目前来讲啊,大部分我们主要用的是内建,还有什么呀,宿主对象啊,宿主对象,但是为什么要先讲自定义对象,那你要清楚,内建对象,宿主对象它也是对象,它也是从这个自定义对象是干嘛呀来的,只不过不是咱们定义的,是浏览器定义的啊,是览基定义的,那所以接下来我们要学的对象就这两个,一个叫做内建对象,还有一个叫什么呀,宿主对象,那我们先来说谁呢?说一个内建对象,内建对象叫什么呀?有我们这个ES标准的话,我们。定义的对象,所有对这个标准的实现里边呢,都有这个对象,那我们先来说第一个叫做什么呢?叫做一个包括我们说的这个object呀,包括我们说的这个function呀,都属于什么呀,内建对象啊,内线对象,那我们先来说谁呢?先来说我们这个叫做什么呢?叫做数组,数组我们叫什么呢?叫做一个ARRA吧,啊叫做一个ara啊叫做一个ara,那这块我们来说一下,那数组是什么玩意儿啊,数组我们先说第一个定义,首先再再说一个废话,叫什么呢?数组它也是一个对象,这都是废话了,以后我们说的全都是什么呀,全都是对象啊,一切都是对象啊,数组呢也是一个对象,它什么呢?它和我们这什么呢?我们这个普通的这个对象干嘛呢?普通的这个对象。
02:26
哎,功能呢,功能类似,它也是干嘛的呢?也是用来存储什么呢?存储一些值的啊,存储一些数据的,存储一些直的,那不同的是什么呢?呃,不同的是我们这个什么呢?我们这个普通对象干嘛呀?普通对象我整一个挖一个什么呢?挖一个obj等于new一个object,这是不是一个普通对象啊,我往里边存东西怎么办呀?我可能obj.name等于个这个孙悟空,我是不是里边存了一个属性啊,大家注意了,我这name是不是我这属性名啊,Name实际上是一个什么呀?是一个字符串吧,哎,字符串不同的是呢,普通对象是什么呢?是使用我们是什么呀?哎,字符串作为什么呢?作为我们这个属性,属性名的啊,属性名的而什么呢?而我们这什么呢?而我们的数组是使用我们这个数字来干嘛呢,来作为索引干嘛呢?诶操作我们这个。
03:27
属性的,或者叫操作我们这个元素的,那注意了,我们这个属性在我们这个对象里叫属性,到了数独里我们叫什么呢?叫元素啊叫元素,但是其实呢,意思是一样的啊,意思都是一样的,那现在我们来看一下数组什么样的啊,我们来举个例子,这里边我们画一个图,那我们说了,这里边咱们先创建这么一个对象,我创一个表格来表示一个对象,先来一什么呢?表示一个普通对象,那我如果是普通对象,它应该什么样的,这块应该什么,我们这个,哎属性名这块是我们这个属性值啊,哎,我要保存值,我来什么呢?来一个这个内幕,这来一个这个孙悟空A置来一个这个。
04:08
18这是我们这个普通对象啊,诶属性名对应一个属性值啊,属名对应一个属性值,而我们数组呢,跟它有点像,那有点像,我们来说一下数组什么样呢?数组就不是使用使用名了,它使用什么呢?使用我们这个索引啊,使用索引,那这块保存的也是一个什么呢?也是一个值啊,也是一个值,那我们来说索引叫什么呢?索引英文名叫做index啊,Index什么叫索引呢?我们来说一下索引很简单,就是什么呢?从零开始的这个整数就是什么呀?就是所以啊,所以注意从所以是从零开始的一个整数,所以以后你一说所以一定要知道,所以是指从从哪啊,从零开始啊,从零开始,所以呢,我们这儿一个数组的情况就什么呢?它这就不是name了,叫什么呢?就是零,这呢是什么呀?一这是二,这是三,这是四,这是五,这是六,那这一个六呢,就叫什么呀,叫索引啊叫索引,所以注意这就是我们数组和这个对象一个区别,对象是使用的属相名,而数组是使用什么呀?索引啊索引,那这一个呢,是一个索引,对应一个值,这一个东西我们叫一个什么呀?元素啊,叫做一个元素,那现在我们来看,那我们说了感觉是不是也差不多呀,其实就相当于什么呀,它的属性名是一个。
05:35
是个数字吧,哎,是个数字,那我们来说数组有什么用的,跟它其实跟这个对象的功能是有有重复的啊,有重复的,但是我们说什么呢?我们说数组的这个存储,存储性能比什么呀,比我们这个普通对象要好,所以什么在开发中我们什么呢?诶我们经常使用我们这个数组来来存储一些什么呀,存储一些这种数据啊,存储一些数据,但是现在我们先理解一下啊,我先来看怎么去数组说半天呢?哎,说半天其实可能还不知道它是什么,对吧,所以我们先要先去写一个这个数组啊,写一个数组,那这块我要研究这个对象,我得先干嘛呀。
06:20
我得先干嘛呀?哎,我是不是得先得创建这个对象啊,所以注意啊,我们说了GS是一门这个面向对象的语言,面向对象现在还不好理解,但是你要注意,一跟你说面向对象的语言就是俩事儿,就是俩事儿,第一件事儿你叫什么呀?叫做找对象,你要面向对象,你是不是先找这个对象啊,哎,第一步叫找对象,所以现在我们是不是要先找到这个数组对象啊,哎,那第二步呢,我们叫什么呢?叫找对象。什么叫搞对象呢?对象有了,那你是不是要找这个对象里边的属性,调这个对象的这个方法呀?哎,这叫搞对象啊,找对象找对象没向对象呢,就这俩事儿啊,就俩事儿,所以现在我们要整这个数组,我是不是得先得把这个数组对象找着啊,那怎么找呢?诶直接来一个叫什么呢?哎,咱们这来一个创建我们这个数组对象,其实这也不算找了,干嘛呀,咱们造一个对象啊,造一个对象直接怎么造呀?哎,是不是构造函数啊,直接来一个哇,一个数组我们叫一个aray,等于什么呢?New,一个ara,哎,这array就是我们这个数组的一个构造函数,现在这个它就是一个什么呀?数组对象我们先来看看是不是直接来一个cancel.log一个瑞,然后一保存走你诶它是不过来一个空的是吧,为什么空的呢?因为这是一个什么呀。
07:50
空数组里边干嘛呀?什么也没有,我们来看什么呢?来一个type off,看它的这个类型,一保存走你什么东西,诶,哦不,Jack是个对象,使用我们这个type of检查一个这个数组是会返回,哦不啊,会返回object,好,那数组对象有了,那接下来呢,搞对象了,我们我们是不是该搞对象了,对吧?你要搞对象,我们这对象怎么搞啊?哎,那既然数组我们说了,是不是就是存东西的呀?所以接下来我们需要往数组里干嘛呀?是不是添加元素啊?哎,添加元素我们来干嘛呢?向我们这个数组中添加我们这个元素怎么添加来说语法一定注意,我们数组存一个属性是通过什么呀,索引来的,而不是像对象那个通过属性名吧,它是通过索引的,怎么来直接来一个。
08:50
不组,然后什么呢?中括号这块注意了就不能用点了,得用什么呢?中括号里边传的是什么呢?所以再说一遍,所以是从零开始的这个整数啊,从零开始的整数,然后呢,等于一个这个值啊等于一个值,那我们来看,现在我想往和瑞这个数组里添加一个值,怎么添加呢?诶我要添加一个元素,怎么添加呢?直接来一个arra,然后中号来什么呢?零等于什么呢?等于一个,比如说我就来一个十,那这表示什么意思?哎,咱们来看拿图来看啊,我现在都给它删了啊,这位位置都给删了,这表示什么意思?表示我是不是向这个数组所引为零的位置添加了一个什么呀元素,它值是什么呀?十,那现在这十干嘛了?就存里边了啊就存里边了,那现在我们来看直接来看一个直接来什么呢?来一个cancel.log一个AR ray,我还是输入它一保存走你诶直接还是不是空了,里边是不是就一个十了。
09:51
诶,就一个十了,那我这添加一个,我还能不能接着添加呀?诶那速度为零,添加完了,我是不是可以往这个这索引为一的位置添加了,来一什么呢?来一个33,随便写一个,诶来这一保存走,你是不是又多了一个,你看十三十三这表示什么呀?十在索引为零的那个位置,33在索引为一的那个位置吧,哎,索引为一的那个位置啊,所以注意索引是从零开始的这个整数,你说我再添加一个行不行,来一个AR瑞中号,来一个二等于个,诶22,我们来看这个再一保存走,你十三十三,22他们是不是使用这个逗号隔开的呀?哎,那就表示什么呀,我现在这数组里有几个元素啊,三个元素啊,有三个元素,这是我们说向数组中添加元素,添加完了我们还有什么呀,我是不得读啊,哎,要什么呢?读取我们这个数组中的这个元素,那你猜猜怎么读啊,是不是一样的呀?哎,我只是不。
10:51
需要干嘛了,是不是等于号了,直接数组加上索引是不是行了呀?所以我要读索引为零的怎么办呢?直接瑞一个什么呀,中号一个什么呀,零是不是就OK了呀?那我这读到应该是谁呀?是不是十啊,因为我刚才存的就是十嘛,一保存走你是不是十啊?诶来,我再来一个中号,一读取索引为一的谁呀?是不是33呀?哎,一保存走你是不是就是33呀?哎33我读取为二的,我就索引为什么呀。
11:18
为二一保存是不是就是22啊,我来一个索引为三的,注意了,我有没有索引为三的,我最大是个二啊三没有,那我们来看什么情况,走你什么了,哎安迪范哎,所以这边我们来说他报没报错啊,哎,所以这块我们说如果什么呢?如果读取不存在的什么呀,所以它干嘛呢,它不会报错,而是我们这个什么呀,返回安迪范啊,返回安find好,这就是我们的数组的一个操作,其实呢,跟对象你看有没有什么大区别啊,没有大区别,只不过就是通过什么了,所引来操作的,其他的都一样,而且你还要注意,所以是从零开始的整数零一二三四五六九八九十,往后随便写啊,我随便写好,那这块看完了这些东西。
12:08
你这添加属性,读取属性也没啥呀,那我想想我要搞这个对象,我是不是还得看看这对象它有什么方法呀,比如说现在来看,我现在数组里有几个元素。是不是三个元素啊,那三个元素我这块还一眼就能看出来,那假如说我现在不知道它有几个元素,我想干嘛呢?我想查一下我这个数组里边有几个元素,完了我想获取我们这个什么呢?获取我们这个数组的什么呀,长度,哎,获取数的长度,获取数组里边有几个元素,那这块我要怎么获取,诶咱们现在感觉好像其实好像不太清楚是吧,怎么获取,那我想一想,我要想获取的它的长度的话,它是一个对象对吧?我要获取它的长度无非就是什么呀。某个属性或者什么呀,某个方法对吧,只有这两个东西你要读,但是问题来了,哪个属性哪个方法咱们是不是不知道啊,不知道咱们就需要怎么办了,是不是有个地方能查一下啊,诶有个地方能查一下,他有没有地方能查呢?诶找到我们这个老朋友好久没用的是吧?好久没用的,我们W3SCHOOL离线手册在这儿呢,一点开它里边的实际上也有什么呢,也有。
13:26
Ru点开这个javascript的往下找,有一个javascript在这呢,啊最上面javascript,然后往下走有一个叫做javascript的对象,然后你点开看这有一栏,这一栏里我们这个GS这个内建对象都给你列着了,什么ara呀,Bully呀,Date呀,Mass呀,Number呀,String,诶正则呀,Function呀,Evens是不都在这呢呀,诶我们要找谁呀,是不是哪里不会给哪里呀,找谁呀,找A瑞了,找A瑞你就点A瑞,然后呢,用法是不是都给你列着了?哎往下看你看什么了,A瑞对象的属性,A瑞对象的方法是不是都给你列着了?诶所以你要找什么东西,上这来查一下就行了,我们来看先看属性,第一个有一叫什么呢?叫做can traor叫返回创建此对象数组的函数的引用构造函数是吧?哎,这玩意儿没用来有一个什么呀,Proty,我们这什么呀。
14:26
原型吧,原型没用,看谁呢?Lengths lengths什么意思?长度叫什么呀?设置或返回数组中元素的数目啊,哎,就是有几个元素吧,哎,那我们要找的是不是就是就是它呀,哎,就是它来我们来说一下我们可以什么呢?我们可以使用我们这个Les l Les属性来干嘛呢?来获取我们数组的一个长度,怎么获取,直接说语法就是什么呀,数组点一个Les这是什么呀,这是一个属性,直接点就完了,我们这来一个,我现在想获取谁呀?
15:04
Arra的长度吧,直接cancel.log一个ara,点一个lengths,然后我这一保存,咱们来看走你长度几三三是什么呀?是不是正好有三个元素,哎,三个元素来我再添加一个,来一个A瑞来一个什么呢?三我这等于什么呢?等于一个44是不是又添加一个呀,现在长度变成几了?哎,一保存是不是变成四了呀?哎,所以Les属性可以获取到我们数组的一个长度,也就是什么呀,元素的是不是个数啊哎,元素的个数啊,元素的个数,但是这里边我们要说一下啊,我们来说一下,对于我们这个连续的这个数组,使用我们这个lengths可以什么呢?可以获取到我们数组的一个长度,诶,也就是我们这个元素的一个个数,注意我前提是什么呀,连续的速度,什么叫连续的,你看我零添加完了添加121添加完了,添加二二添加完了添加三呀0123,我是不是顺序添。
16:04
加的呀,好,我这换一个来一个A瑞一个什么呢?来一个十等于一个这个诶叫做31瑞,十等于一个31,中间456789,我是不是都跳过去了,哎,那现在我再问你,我这Les它的值是什么了,还是不是他会不会获取到五啊。诶来我这一保存咱们来看走你变成多少了,11啊11,那我这里边是不是有11个元素,不是,是不是只有五个元素啊,哎,只有五个元素啊,所以注意什么呢?对于什么呢?对于我们这个非连续的这个数组,它会什么呢?使用我们这个Les,而GPH会什么呢?会获取到我们这个数组的什么呢?叫做最大的索引加一啊最大索引加一,那你来看我现在速度最大索引是谁呀?十,所以它返回的是不是就11啊,但是其实是连续速度一是最大索引干嘛呀,加一只不过正好是它是它什么呀?长度啊长度,那我再来一个呃瑞一个中号,来一个这个100等于一个这个,诶来一个90,那我现在问你这个Les应该什么,哎,是不是101啊,最大索引加一,但是注意这种东西好不好。
17:24
诶,你虽然只是在零一二三十一百这加了吧,我们来看这数组打啥模式啊,直接来输出一下这个数组,来一个cancel点一个love,一个A瑞,然后我们来保存,咱们来看走你十三二三二十二四十四这是一堆什么呀?豆豆豆豆豆豆豆豆,然后90是不是一堆逗号啊,怎么冒出一堆逗号了呀,你虽然没有往五的这个三,这是四的这个位置是吧?所以为四这个位置添加,但是它干嘛了,它是不是给你空出来了,哎,空出来了啊所以注意这种非连续的数组中间这些内容呢,都会给你干嘛呀空出来,那我们想想他给你空出来是不是就占到站这位置呢?哎,站这位置呢?啊所以注意我们尽量干嘛呀,尽量不要创建这种什么呀,非连续的这个数组啊,尽量不要创建我们这个非连续的数组啊,一定要注意好,那这一块我们看完了啊,这是。
18:24
我们说是Les可以获取到我们这个数组的一个长度啊,获取到数的一个长度,这种呢,尽量不要写啊,尽量不要写,那再来看啊,我现在把它给注了,注了以后呢,都住了啊,现在是不是又变成一个连续的了,0123啊四个元素一保存是不是四个元素啊,长度是四,都输出一下啊,长度是四,一保存长度是四,四个元素对吧?好,那我们刚才看这个描述啊,你要看这文档怎么写的。设置或返回刚才我们用的什么呀,返回也就是说这Les我是不是还能还能设置啊,诶还能设置我们来看看啊,那现在我们来看看我来干嘛呢?修改我们这个Les,诶注意啊,来一个什么呢?来一个这个A瑞点一个Les,我长度是不是应该刚才是四啊等于什么呢?我改一个等于十,我是不是把长度改成十了呀?诶那注意了,我这再输出一下上边这个呢,是我什么呀,修改。
19:24
前这是修改后的啊,修改后的来我一保存走,你修改前是四吧,四个元素,修改后是变成10万,然后你看干嘛了,是不是都空出来了,哎又一堆豆是吧,一堆豆,所以这块注意,我们说如果什么呢?如果我们修改的这个Les干嘛呢?而ength大于什么呀,圆原长度啊大于原长度则什么呢?则多出的部分干嘛呀,哎会干嘛呀,是会空出来呀,哎会空出来啊它是有的,它是有的,只不过这个干嘛呀给你空出来就像什么呀,我们这数组把这个位置都给你干嘛呀,创建出来了,但是这干嘛呀不填东西啊,不填东西会把这个位置给你空出来啊给你空出来,那这种其实就就不好了是吧,空余的位置没有必要了,那我们来说大于还有什么呢?小于我长度是四吧,而要Les改一什么呢?等于一个三,我一保存三是。
20:24
什么效果呀,走你长度变成三了吧,谁没了,44是没了呀,来我改一个什么呢?改一个这个改一个二改成二清空一下一保存,走你是不是22和44都没了呀?哎,所以注意叫什么呢?如果什么呢?如果Les,如果我们修改的这个Les小于我们这个原长度,则什么呢?则多出的这个什么呀,元素会被什么呀,删除啊,会被删除,所以你看我们这是不是就是这个22和44就被被删了呀,诶22和44就被删了啊,所以这块我们可以干嘛呢?我们可以通过修改Les来干嘛呀,来删除一些元素吧,哎,来删除一些元素啊,这是我们数组一个这个Les属性啊,Les属性好,那这看完了,我们接着来往下看啊,这我先给它注了Les属性,看。
21:24
长了,那我们说这有什么用呢?来现在我们这元素一共长度是几啊,长度长度是四是吧,最后一个是是三是吧?哎,最后一个是三,那我这来一个什么呢?我这再添加来一个什么呢?AR瑞来一个什么呢?来一个这个四等于个这个50,随便写一个,然后我们这来一个cancel.log一个这个AR瑞,我是想往数的最后一个添加了一个50啊诶然后呢,这也住了啊,这也住了,就剩一个50,然后呢,我再往后添,我是不是该添加五了五,我这来什么呢?来一个60,是不是最后又添加一个60啊哎,那我再往现在这种情况,我还能区分出我最后应该往哪添对吧?哎,再往后天是不是该往。
22:07
往六天呀,再往后天是应该往七天呀,但是我们说了,当这值过大的时候,我是不是就不知道了呀,那我希望什么呢?我希望永远都是向数组的什么呀,最后一个位置添加元素,添加元素什么意思?假设现在数组的最大索引是三,我往哪往哪加,是往四加呀,最大索引是五,四我就往五加,最大索引是五,我是不是就往往六加呀,最大索引是六,我是不是就往七加呀,你就说我总是要比你这个最大索引是不是要大一啊,诶大一,但是这一块我这么写有点麻烦了,我有没有什么简单方式,我不想管它有几个我就希望干嘛呀,像最后的位置添加。那我是不是就往那个索引比那个最大索引还大一的那个位置位置添加呀,那最大索引我们能最大索引加一,谁是最大索引加一啊,是不是Les属性啊,我们说Les属性的值是不是就是我们这个最大索引加一啊,所以现在我你看我这么写行不行?来什么呢?来一个这个A瑞中号,来一个A瑞点一个Les等于什么呢?等于个70,这什么效果?瑞点Les是谁?现在最大索引是谁?五,那瑞点Les是谁?是不是六啊,来你保存是不是最后多了一个70啊?诶然后再写一个还是有点Le死,来一个80,这回是谁的是不是70,后边又多一八十啊,来一个什么呢?再来一个,来一个90,我们再看这一刷新走,你是往后多了一个90啊,所以你看我们通过这个A瑞点,Les是不是可以一直向数组的最后去添加。
23:58
元素啊,哎,你这么写它总会添加到我们数组的什么呀,最后能看懂吗?哎,但是一定要注意你这A瑞能不能省略,你这么一省略变成什么了,是不是像全局里找Les呀,哎,找Les啊,所以注意我们要找的是这个A的Les,这个东西是不能省略的啊,我能省略的,所以这里边我们来说一下,这是一个小的技巧,大家说语法怎么写的呀,数,然后中号数组点Les。
24:28
然后呢,等于一个这个什么呀,哎,值或者等于一个元素啊,是这种方式啊,永远干嘛呢,永远都会向我数组的什么呀,最后一个位置添加元素啊,最后一个位置添加元素好,那这个呢,是我们说数组一个这个简单的一个介绍啊,我们先初步的去了解一下,来听一下。
我来说两句