数据结构与JS也能够成为CP(一)数组

Hello小伙伴们,通过了最近的一些介绍,咱们今天又返回了JS,为何呢?咱们主要是对数据结构进行一下介绍,不少小伙伴认为对于前端来讲数据结构不重要,曾经的我也是这么认为,甚至以为面试官面试数据结构就是画蛇添足,可是在后面的搬砖过程当中发现,本身真的错了。对于前端宝宝们来讲,最熟悉的语言就是JS了,并且leetcode也是支持JS的,因此今天兔妞就和你们一块儿看看数据结构与JS的CP会擦出什么样的火花吧~前端

基本编程模块回顾面试

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

1)声明和初始化变量数组

var rabbitNum;微信


2)算术运算数据结构

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

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


3)判断结构.net

if(){code

...

} 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 的元素


好啦,今天的内容就到这里啦,喜欢兔妞的文章就请关注+在看吧~~

本文分享自微信公众号 - 萌兔it(mengtu_it)。
若有侵权,请联系 support@oschina.cn 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一块儿分享。

相关文章
相关标签/搜索