JavaScript數組

 

1. JavaScript數組簡介程序員

         ① 爲何須要數組數組

         數組能夠很方便的用來管理一組數據。例如:咱們須要變量來存儲一個星期裏面的每一天。函數

         

         ② 如何建立數組spa

         在JavaScript裏面,建立數組有2種:操作系統

         1)經過對象來建立數組3d

         目前由於沒有講解對象,做爲了解便可對象

          

         2)經過特殊符號來建立數組blog

            

         ③ 如何給數組賦值排序

         分爲兩種:1)先申明,再賦值;2)申明和賦值一塊兒索引

         1)先申明,再賦值

           

          從上面咱們已經能夠看到,JavaScript的數組能夠動態的增長長度。

 

          2)申明和賦值一塊兒

              

          ④ JavaScript的數組能夠放入任意數據類型

                

           ⑤ 訪問數組裏面的數據

            當咱們要遍歷數組的時候,和C語言同樣,使用循環

             

2. JavaScript數組進階(重點)

         ① 數組在內存中存在的形式

         和C語言同樣,JavaScript數組的名字仍然表明數組的首地址。

         地址是存儲在內存裏面棧區,具體的數值是存儲在堆區

        

 

        棧區:由編譯器自動分配和釋放,通常用來存儲函數的參數值,局部變量等。

        堆區:通常由程序員手動分配和釋放,若是程序員不釋放,那麼程序結束的時候由操做系統進行回收。

        全局區/靜態區:全局變量和靜態變量通常就是放在這個區域。全局區裏面的全局變量由系統進行回收。

        文字常量區:常量字符串就是放置於文字常量區。程序結束後由系統來進行釋放。

        程序代碼區:存放函數體的二進制代碼。

        

 

        ② JS數組的動態增加

       1)JavaScript數組能夠存聽任意類型的數據

       2)訪問數組中元素必須經過索引,可是當你訪問一個不存在的索引時,不會報錯,而是返回一個undefined

            

 

           3)若是試圖賦值給一個不存在的索引值,也不會報錯,而是自動擴展數組的長度。

               

 

             結論:JavaScript的數組能夠動態的增加

 

3. JavaScript二維數組

 

      ① 二維數組的建立

       JavaScript自己是不支持多維數組的,可是,因爲JavaScript數組裏面能夠聽任意類型的數據,因此咱們能夠模擬出二維數組

        

 

        c[0][2]打印輸出的值會是Lucy,首先0這個數會肯定數組a,1這個數就確認數組a裏面的第幾個。

 

            

 

            申明二維數組還有一種方法:

             

         ② 二維數組的遍歷

          遍歷二維數組須要使用雙層for循環

            

          課堂練習1:矩形對角線之和

          要求:用戶輸入矩形的寬度,而後生成矩形

 

          

 

   課堂練習2:二維數組的轉置

<script>
//    [8,-1,9,3]
//    [7,12,-5,6]
//    [6,4,2,99]
//原數組
var arr1 = [[8,-1,9,3],[7,12,-5,6],[6,4,2,99]];
var arr2 = [];
//肯定新數組有多少行——即撐開行
for(var i=0;i<arr1[0].length;i++){
        arr2[i] = [];
}
//動態添加數據   遍歷原數組
for(var i=0;i<arr1.length;i++){
for(var j=0;j<arr1[i].length;j++){
            arr2[j][i] = arr1[i][j];
}
    }
//打印新數組
for(var i=0;i<arr2.length;i++){
for(var j=0;j<arr2[i].length;j++){
            document.write(arr2[i][j]);
}
        document.write("<br />");
}
</script>

 

4. 數組排序

數組排序的方法不少,這裏主要介紹一下冒泡和選擇排序

1)冒泡

所謂冒泡,就是兩個相鄰的數字不停的比較。冒完一次泡,就會有一個最大的或者最小的數字會移動到最後,再冒一次泡,倒數第二大或者倒數第二小的數又會移動到倒數第二位。

 

 

 

2)選擇排序

選擇排序的核心思想就是拿一個數和數組裏面的全部的數進行比較。直到該數在該數組中的正確位置

 

 

 

 

 

5. 數組相關屬性和方法

1)length屬性

獲取到數組的長度

語法:數組名.length 

 

2)split():用於把一個字符串分割成字符串數組

split()裏面填寫"分割字符",分割字符不會被計入到數組

 

3)反轉數組

reverse():將一個數組裏面的元素所有反轉過來

 

相關文章
相關標籤/搜索