Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >数据结构与JS也可以成为CP(一)数组

数据结构与JS也可以成为CP(一)数组

作者头像
萌兔IT
发布于 2019-07-26 06:15:29
发布于 2019-07-26 06:15:29
8940
举报
文章被收录于专栏:萌兔it萌兔it

Hello小伙伴们,经过了最近的一些介绍,我们今天又返回了JS,为什么呢?我们主要是对数据结构进行一下介绍,很多小伙伴认为对于前端来说数据结构不重要,曾经的我也是这么认为,甚至觉得面试官面试数据结构就是多此一举,但是在后面的搬砖过程中发现,自己真的错了。对于前端宝宝们来说,最熟悉的语言就是JS了,而且leetcode也是支持JS的,所以今天兔妞就和大家一起看看数据结构与JS的CP会擦出什么样的火花吧~

基本编程模块回顾

想要开始数据结构之旅,我们首先要保证自己编程模块还记得很熟练。先让我们回忆一下这些模块吧~

1)声明和初始化变量

var rabbitNum;

2)算术运算

运算符:+ - * / % (还记得都怎么用吗

函数:Math.sqrt(), Math.abs()

3)判断结构

if(){

...

} else{

...

}

switch(){

case "1":

...

break;

...

}

4)循环结构

while(){

...

}

for(){

...

}

5)函数

function rabbitFamily(){

...

}

6) 递归:简单些说就是设置一个终止条件,在没达到条件之前反复自己调用自己。

function findRabbit(index){

if(index == 6){

return index;

}else{

return findRabbit(index+1);

}

}

findRabbit(1);

数据结构的开端——数组

复习好了,我们就开始第一个结构数组吧,其实我们之前也聊过数组了,就也权当复习一下吧~

1)创建数组

var rabbits=[];

var rabbits=['rabbit1', 'rabbit2', 'rabbit3'];

var rabbits = new Array();

var rabbits = new Array('rabbit1', 'rabbit2', 'rabbit3');

var rabbits = new Array(10);

2) 读写数组

对于数组最多的操作,兔妞觉得就是遍历数组了。

for(var i=0; i<arr.length; i++){

console.log(arr[i]);

}

3) 字符串与数组的相互转换

var rabbitFamily = "Rabbit father rabbit mother and rabbit baby";

var arr = rabbitFamily.split(" ");

console.log(arr); //['Rabbit', 'father', 'rabbit', 'mother', 'and', 'rabbit', 'baby'

var newRabbitFamily = arr.join(" ");

console.log(newRabbitFamily); // "Rabbit father rabbit mother and rabbit baby"

4)数组的操作

连接数组:arr1.concat(arr2);

截取数组:arr1.splice(3,3);

添加元素(尾):arr.push(1);

添加元素(头):arr.unshift(0);

删除元素(尾):arr.pop();

删除元素(头):arr.shift();

数组排序(顺序):arr.sort();

数组排序(倒序):arr.reverse();

5)迭代器方法:什么叫迭代器方法呢?就是会对数组中每个元素应用一次函数,然后返回一个新的数值、数组等。

forEach():接受一个函数作为参数,并对数组中每个元素使用这个函数

every():接受一个返回值类型为布尔的函数,对每个元素使用此函数,所有结果均为true则为true

some():类似于every(),数组中所返回的结果有一个为true,some即为true

reduce():该方法会从一个累加值开始,不断对累加值和 数组中的后续元素调用该函数,直到数组中的最后一个元素,最后返回得到的累加值。

map():接受一个函数作为参数,并对数组中每个元素使用这个函数,但是返回的是一个数组

filter():filter() 和 every() 类似,传入一个返回值为布尔类型的函数。和 every() 方法不同的是, 当对数组中的所有元素应用该函数,结果均为 true 时,该方法并不返回 true,而是返回 一个新数组,该数组包含应用该函数后结果为 true 的元素

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2019-06-14,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 萌兔it 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
数据结构于JS也可以成为CP(六)字典
Hello小伙伴们大家好,今天我们继续下一个数据结构,前面的数据结构所存储的数据都是单元素,但是如果我们想对一对数据进行存储该用什么呢?这时候就要请出字典了,字典是一种键-值对形式的数据结构,有没有想起什么,没错object就是以字典为基础的呢。
萌兔IT
2019/07/26
6770
JavaScript入门总结——第三弹 数组大放送
Hello大家好~~首先在这里祝大家元宵节快乐呢,大家吃汤圆了吗,兔妞反正还没吃呢,等着晚上放开肚子吃呢,糯叽叽糯叽叽,嘿嘿
萌兔IT
2019/07/25
3840
JavaScript入门总结——第三弹 数组大放送
JavaScript第七弹——深入理解浅拷贝与深拷贝
Hello小伙伴们,抱歉这两天没有更文,今天我来将功补过啦,今天的主题是“拷贝”!大家还记得之前说过的数据类型吗,那可是我们今天的基础呢!
萌兔IT
2019/07/25
4270
JavaScript第七弹——深入理解浅拷贝与深拷贝
重读《学习JavaScript数据结构与算法-第三版》- 第3章 数组(一)​
读《学习JavaScript数据结构与算法》- 第3章 数组,本节将为各位小伙伴分享数组的相关知识:概念、创建方式、常见方法以及ES6数组的新功能。
胡哥有话说
2019/08/19
5350
JavaScript入门总结——第二弹学习对象,分清__proto__、prototype
Hello小伙伴们,我又来啦,今天我们要继续我们JavaScript的入门总结第二弹!!!
萌兔IT
2019/07/26
4900
JavaScript入门总结——第二弹学习对象,分清__proto__、prototype
用js来实现那些数据结构02(数组篇02-数组方法)
    上一篇文章简单的介绍了一下js的类型,以及数组的增删方法。这一篇文章,我们一起来看看数组还有哪些用法,以及在实际工作中我们可以用这些方法来做些什么。由于其中有部分内容并不常用,所以我尽量缩小篇幅。在这篇文章内介绍完大部分的数组方法,加快我们实现其它数据结构的脚步。 1、concat()     合并数组,可以合并一个或多个数组。会按照参数顺序依次合并进想要合并的数组。 //concat的参数并不是只能传入数组,字符串,数字,布尔值,对象等都可以传入。 var arr = [0,1,2,3,4,5,
zaking
2018/05/02
1.2K0
用js来实现那些数据结构02(数组篇02-数组方法)
    上一篇文章简单的介绍了一下js的类型,以及数组的增删方法。这一篇文章,我们一起来看看数组还有哪些用法,以及在实际工作中我们可以用这些方法来做些什么。由于其中有部分内容并不常用,所以我尽量缩小篇幅。在这篇文章内介绍完大部分的数组方法,加快我们实现其它数据结构的脚步。
全栈程序员站长
2022/07/20
5100
比较JavaScript中的数据结构(数组与对象)
大家都说简历没项目写,我就帮大家找了一个项目,还附赠【搭建教程】。 在编程中,如果你想继续深入,数据结构是我们必须要懂的一块, 学习/理解数据结构的动机可能会有所不同,一方面可能是为了面试,一方面可能
前端小智@大迁世界
2020/10/10
6.3K0
比较JavaScript中的数据结构(数组与对象)
用js来实现那些数据结构01(数组篇01-数组的增删)
   在开始正式的内容之前,不得不说说js中的数据类型和数据结构,以及一些比较容易让人混淆的概念。那么为什么要从数组说起?数组在js中是最常见的内存数据结构,数组数据结构在js中拥有很多的方法,很多初学者记不清数组的大多数用法,只知道push,pop,shift等最基本的几个。所以,本系列(数组篇)会尽可能的让大家对数组有一个透彻的了解。也方便后面其他数据结构的学习和使用。    可能很多web前端开发者都会有一个疑问,那就是,数组和对象究竟是数据类型?还是数据结构?那么我们就带着这样的疑问,开始下面的学习
zaking
2018/05/02
1.5K0
JavaScript数据结构01 - 数组
PS:原始值是指固定而简单的值,存放在栈中的简单数据段,它们的值直接存储在变量访问的位置。
leocoder
2018/10/31
1.2K0
js 数组详细操作方法及解析
目的:Array.of() 出现的目的是为了解决上述构造器因参数个数不同,导致的行为有差异的问题。
kif
2023/02/27
1.4K0
[第 3 期]JavaScript数据结构之数组栈队列
1. 数组 数组是平时使用最常用的数据结构,在JavaScript中数组是动态的分配大小,在这里我不会介绍JavaScript里面数组的所有的方法,而是针对数据结构这个方向谈谈所用到的方法。 1.1 创建和初始化数组 //创建空数组 var array = new Array(); //[] //初始化数组 var array = new Array(1,2,3); var array = Array.of(1,2,3);//ES6的方法 //[1,2,3] //创建大小为5的数组 var array
桃翁
2018/06/27
6000
js数组常用方法总结
最近工作中经常用到数组操作,每次都傻傻不知道怎么用,今天有时间整理了一下,希望对大家有帮助!这些基础的知识,要熟记于心。
半指温柔乐
2018/09/11
5.2K0
JS高级-数据结构的封装
最近在看了《数据结构与算法JavaScript描述》这本书,对大学里学的数据结构做了一次复习(其实差不多忘干净了,哈哈)。如果能将这些知识捡起来,融入到实际工作当中,估计编码水平将是一次质的飞跃。带着这个美好的愿望,开始学习吧O(∩_∩)O~~ 我们知道在JS中,常常用来组织数据的无非是数组和对象(这些基础就不介绍了)。但在数据结构中,还有一些抽象的数据类型:列表、栈、队列、链表、字典、散列、集合、二叉树、图等,可以用来更好的对实际场景建模。当然这些数据类型,原生JS不支持,那么就需要通过封装来模拟,其底层
小古哥
2018/03/08
8.1K0
【Node.js算法题】数组去重、数组删除元素、数组排序、字符串排序、字符串反向、字符串改大写 、数组改大写、字符替换
本期文章是js的一些算法题,包括数组去重、数组删除元素、数组排序、字符串排序、字符串反向、字符串改大写 、数组改大写、字符替换。
颜颜yan_
2023/03/06
1.9K0
【Node.js算法题】数组去重、数组删除元素、数组排序、字符串排序、字符串反向、字符串改大写 、数组改大写、字符替换
力扣 (LeetCode)-最大子序和,JavaScript数据结构与算法(数组)
每天学习编程,让你离梦想更新一步,感谢不负每一份热爱编程的程序员,不论知识点多么奇葩,和我一起,让那一颗四处流荡的心定下来,一直走下去,加油,2021加油!欢迎关注加我vx:xiaoda0423,欢迎点赞、收藏和评论
达达前端
2021/03/22
4890
力扣 (LeetCode)-最大子序和,JavaScript数据结构与算法(数组)
数据结构系列 -- 手撸数组
数组在开发中是必不可少、不可或缺的重要组成元素。在 Java 数据结构中,数组也被赋予神圣的地位。但是你真的会数组吗?那今天换个姿势,我们来怼一怼数据结构中的数组。 一、数组定义 数组的定义比较基础,在这就不展开了。(需要重温 Java 数组的可以参照菜鸟教程的 Java 数组模块) 二、数组基础用法 数组可以直接使用的方法不多,遍历便是最简单的一种使用。 1. 数组遍历 数组遍历比较简单,简单粗暴的使用 for 循环遍历是最简单的事情,当然也可以使用 foreach 遍历。如下: public stat
程序员小跃
2020/01/13
3880
数据结构于JS也可以成为CP(五)链表
Hello大家好~兔妞今天给大家带来的是链表哦!为什么有链表呢,因为数组并不总是组织数据的最佳数据结构。由于在JavaScript中数组是一个对象,所以js的数组相比其他语言的数组效率较低。那么我们就可以考虑使用链表啦。
萌兔IT
2019/07/26
6600
数据结构于JS也可以成为CP(五)链表
数据结构
数组内存地址是连续的,但是js中的内存地址是不连续,原因是数据类型可以是任意类型导致的
花落花相惜
2021/11/25
1.1K0
JS 数组中 reduce 方法详解
reduce() 方法接收一个函数作为累加器(accumulator),数组中的每个值(从左到右)开始缩减,最终为一个值。 也就是说,这个累加器会从第一个累加值开始,不断对累加值和数组中的后续元素调用该累加器,直到数组中的最后一个元素,最后返回得到的累加值。
Leophen
2021/06/10
7K0
推荐阅读
相关推荐
数据结构于JS也可以成为CP(六)字典
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档