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源创计划”,欢迎正在阅读的你也加入,一块儿分享。