javascript教程系列-5.數組

轉載請標明出處!
 
棧堆結構:
 
堆棧都是一種數據項按序排列的數據結構,只能在一端(稱爲棧頂(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 arr2= new Array(1,100,2,3);//使用構造函數建立;4個數據
 
var arr3 = [1,2,3,4,5];
 
靜態賦值
 
arr[0] = 5;
 
arr[1] = 12;
 
arr[2] = 4;
 
動態賦值
 
for(var i=0; i<5; i++){
 
    arr[i] = Math.random();
 
}
 
 
數組對象自帶的屬性: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方法  (數字的排序)
 
算法:
 
冒泡排序算法:
 
 
 
選擇排序算法:
 
 
 
隨機點名程序:
 
 
數組去重:
 
相關文章
相關標籤/搜索