好程式設計師web前端分享陣列及排序 去重和隨機點名

2021-09-23 23:56:14 字數 1787 閱讀 3829

好程式設計師web前端分享陣列及排序、去重和隨機點名,棧堆結構:

堆疊都是一種

資料項按序排列

的資料結構,只能在一端(稱為棧頂(top))對資料項進行插入和刪除。

棧:存放的是路徑;容量有限(在一開始被定義之後就不會改變了);先進後出(filo

)first in

last out

堆:路徑對映的資料;容量無限(因為一直可能被改變);列隊優先,先進先出(fifo

)first in last out

如果我們把陣列理解為棧堆結構的話,那麼 

var arr =  [1,2,3,4,5,6 ];

那麼arr就是 棧 他是乙個路徑 : 找到資料的儲存層;

資料 [1,2,3,4,5,6] 就是堆 ; 

如果我們想要 改變堆中的資料的話,那麼我們可以用push()方法向尾部新增乙個資料,或者用pop()方法刪除尾部資料。

陣列:

for-in(結合陣列或物件);

陣列的概念,一組(一般情況下相同型別)的資料;

下標(索引)的概念;

建立陣列

var arr= new array(10); //建立乙個包含 10 個元素的陣列;

var arr2= new array('楊懷智',100,'教師','遼寧');//使用建構函式建立;

var arr3 = [1,2,3,4,5];

靜態賦值

arr[0] = 5;

arr[1] = 12;

arr[2] = 4;

動態賦值

for(var i=0; i<5; i++)

陣列物件自帶的屬性:length

代表陣列有多少資料項;

遍歷訪問陣列  普通for迴圈和 foreach迴圈

arr.foreach(function(element,index,arr))

push/pop、unshift/shift方法

arr.push('bj'); //陣列末尾新增乙個元素

arr.unshift('tj');  //陣列開頭新增乙個元素

var str = arr.pop();   //移除末尾乙個元素,並返回該元素

var str = arr.shift();   //移除開頭乙個元素,並返回該元素

佇列結構:

練習:找出所有1-100之間7的倍數和包含7的數字

倒序reverse方法;

arr.reverse()方法不會建立新的陣列,而是將原有陣列順序進行了改變;

var arr=[1,2,3]

arr.reverse();

console.log(arr)//3,2,1

從小到大排序sort方法  (數字的排序)

選擇排序演算法:

案例:去重

隨機點名程式:

隨機點名

好程式設計師web前端分享函式作用域及遞迴

作用域的生命週期。var a 10 function m1 形參 形式引數 與實參 實際引數 的重要區別 var a 10 var x 0 function fn x fn a 遞迴的用法 什麼是遞迴?自身呼叫自身!function pr 關鍵點 1.終止條件 2.運算規則 function pr ...

好程式設計師web前端分享邏輯運算

一門計算機語言,程式設計的核心在於邏輯思想,當我們在編寫程式的時候,邏輯是否通順,是能否正確寫出程式的關鍵,可以說如果你掌握了邏輯,那麼你就踏入了計算機程式設計的大門。與 或 否 邏輯 與 var a 0,b 3 alert a 0 b 3 true alert a 1 b 3 false 他的 返...

好程式設計師web前端分享CSS學習 HSLA顏色模式

好程式設計師web前端分享css學習 hsla顏色模式 一 理論 1.hsla顏色模式 a.hsla在hsl基礎上增加了不透明度,值越大透明度越低 b.hsla顏色模式的瀏覽器相容性和hsl一樣,只有較新版本的主流瀏覽器才支援 2.rgba和hsla顏色模式二者可以完全相互替換 3.rgba hsl...