前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >数据结构与JS也可以成为CP(一)数组

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

作者头像
萌兔IT
发布2019-07-26 14:15:29
8170
发布2019-07-26 14:15:29
举报
文章被收录于专栏:萌兔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 删除。

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

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档