javaScript预习(五) 数组(1)

color[99]=“blue”;

alert(color[98]);//虽然定义过100的位置是blue,但是99的位置没有,会提示undefined

另外,通过设置.length可以查询数组的长度,例如

alert(a.length);//弹出的对话框显示,3

另外数组的长度取决于最后一个位置,例如上面的数组a,如果我定义a[100]=“4”,那么,即时a[3]~a[99]都是undefined,但是长度仍然显示的是101;

还有,leng也可以裁剪数组,例如上面的a数组的长度为3,假如我设置了a.length=2,那么,a数组中的“yellow”就会被裁剪掉,没有了

假如,设置了a.length=4;

另外,

a[a.length]=“black”;//这是a的数组为a=[“red”,“green”,“yellow”,“black”];

a[a.length]=“brown”;//这是a的数组为a=[“red”,“green”,“yellow”,“black”,“brown”];

a[a.length]这种叫做可扩展性,因为前面不需要修改,永远在数组的最后一位新增了一个内容,前面有多少都无关

将数组转换成字符串

a.toString()=a.valueOf(),这两个是等价的,都是输出数组,或者也可以直接是a,例如console.log(a);

还有一种方法,叫做a.join(“|”),这种方式输出的数组会以join括号里指定的分隔符分割输出

堆栈

怎么说呢,大致就是将数组放入一个容器输入的时候先放入的在底部后放入的在上面输出的时候要先取出上面的,才可以取出后面的,所以输入和输出是反过来的,举个例子,大致就是依次放入1-10,10个数字,但是取出来的时候是10-1

var a=[“red”,“green”,“yellow”];//定义一个数组,也可以用var a=new Array();定义

var count;//显示数组当前存放的数量

count=a.push();//push()是堆栈的方法,功能是将内容逐一放入先放入在底部后放入的在表层,这条语句的含义是count是当前数组a中的数量,也就是3,因为push括号里的参数是空;

count=a.push(“black”);//这边count就变成了4,因为通过push方法,我们往数组a里面新增了一个内容,“black”,此时的数组a=[“red”,“green”,“yellow”,“black”];

var len=a.length;//将数组的长度,预先定义好,因为取出的方法pop(),会将内容取出后移除那个位置,因此数组的长度是逐渐会减一

for(var i=0;i<len;i++){

var color=a.pop();

console.log(color);

}

通过循环,输出的内容为:black,yellow,green,red;

另外:pop()是出栈的方法,出栈后,相对的位置会被移除,例如,第一次出栈的时候,初始的数组a=[“red”,“green”,“yellow”,“black”],而pop()之后,数组a=[“red”,“green”,“yellow”];

队列

前面放入的方法跟堆栈是一样的,都是通过push()方法,将内容往数组中存储;

区别是:

出栈的方法是:pop();        //此方法是将数组内容从表层往底层读取出栈,简称是  先进-后出,出栈后内容消失,并且数组删除掉出栈的内容。

队列读出的方法是:shitf();        //此方法是将数组的内容从底层往表层读取,简称是   先进-先出,操作后内容小时,并且数组删除掉操作的内容。

排序

var a=[0,20,10,5,3]

sort();//这个见单独一章解释,比较复杂

reverse();    //将数组倒过来,示例:a.reverse(),那么输出的结果,a=[3,5,10,20,0]

数组操作

var a=[0,20,10,5,3]

连接,concat();    //比如:var b=[9,1,2];    var x=a.concat(b);  那么此时的x=[0,20,10,5,3,9,1,2]

截取,slice(start,end);    //两个参数,第一个是起始位置,负数的话则从第一个开始算,第二个(可选)结束位置,负数的话,到最后一个开始倒数,比如:

var m=a.slice(0,2),则m=[0,20]    或者

var m=a.slice(0,-1),则m=[0,20,10,5]     或者

var m=a.slice(1,2),则m=[20];    或者

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数前端工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年Web前端开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。

img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上前端开发知识点,真正体系化!

由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!

如果你觉得这些内容对你有帮助,可以扫码获取!!(备注:前端)

最后

本人分享一下这次字节跳动、美团、头条等大厂的面试真题涉及到的知识点,以及我个人的学习方法、学习路线等,当然也整理了一些学习文档资料出来是附赠给大家的。知识点涉及比较全面,包括但不限于前端基础,HTML,CSS,JavaScript,Vue,ES6,HTTP,浏览器,算法等等

详细大厂面试题答案、学习笔记、学习视频等资料领取,点击资料领取直通车免费领取!

前端视频资料:
涉及比较全面,包括但不限于前端基础,HTML,CSS,JavaScript,Vue,ES6,HTTP,浏览器,算法等等

详细大厂面试题答案、学习笔记、学习视频等资料领取,点击资料领取直通车免费领取!

[外链图片转存中…(img-H8zpDCBJ-1713506955434)]

前端视频资料:

  • 10
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值