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源創計劃」,歡迎正在閱讀的你也加入,一塊兒分享。