<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ThinkChat2.0新版上線,更智能更精彩,支持會話、畫圖、視頻、閱讀、搜索等,送10W Token,即刻開啟你的AI之旅 廣告
                **何為數組:** 所謂數組,就是相同數據類型的元素按一定順序排列的[集合](http://baike.baidu.com/subview/15216/10703233.htm),就是把有限個類型相同的變量用一個名字命名,然后用編號區分他們的變量的集合,這個名字稱為數組名,編號稱為[下標](http://baike.baidu.com/view/729047.htm)。組成數組的各個變量稱為數組的分量,也稱為數組的元素,有時也稱為下標變量。數組是在程序設計中,為了處理方便, 把具有相同類型的若干變量按有序的形式組織起來的一種形式。這些按序排列的同類數據元素的集合稱為數組。 ![](https://box.kancloud.cn/2016-05-06_572c45a383922.jpg) 在JS中除了Object類型以為,我們用的最多的應該就是數組了。而且JS數組和其他大多數語言中的數組有著很大的區別。在Java語言中,我們聲明了一個數組,那么這個數組只能保存相同類型的值,集合數組也是一樣;而在我們的JS數組中的每一項都可以保存任何數據,也就是說我們的JS數組第一個位置可以用來保存字符串,第二個位置可以用來保存數值,第三個位置可以用來保存對象。并且JS的數組是動態調整的,有點類似于Java的集合數組(List);會隨著數據的增加而擴大數組的容量; **1、數組的創建** ~~~ var array = new Array(); //創建一個數組 <span style="white-space:pre"> </span>var array = new Array([2]); //創建一個數組并指定長度,注意不是上限,是長度 var array = new Array([1,'字符串',new Object()]); //創建一個數組并賦值,對應的是數字,字符串,對象 alert(array); ~~~ **2.檢測數組** ~~~ array instanceof Array; //返回結果為布爾值 Array.isArray(array); //返回結果為布爾值,只支持IE9,谷歌,火狐能 ~~~ **3.數組的轉換** ~~~ var person1={ toLocaleString :function(){ return "Nikolaos"; }, toString:function(){ return "NiCholas"; } }; var person2= { toLocaleString :function(){ return "Grigorios"; }, toString:function(){ return "Greg"; } }; var people=[person1,person2]; alert(people); alert(people.toString()); alert(people.toLocaleString()); ~~~ 數組轉換成字符串可以使用toStirng,valueOf,toLocaleString,Join; **4操作方法** **4.1數組的元素的訪問** | `1` | `var`?`testGetArrValue=arrayObj[1];?``//獲取數組的元素值` | |-----|-----| | `2` | ? | |-----|-----| | `3` | `arrayObj[1]=?``"這是新值"``;?``//給數組元素賦予新的值` | |-----|-----| **4.2數組元素的添加** | `1` | `arrayObj. push([item1 [item2 [. . . [itemN ]]]]);``// 將一個或多個新元素添加到數組結尾,并返回數組新長度` | |-----|-----| | `2` | ? | |-----|-----| | `3` | `arrayObj.unshift([item1 [item2 [. . . [itemN ]]]]);``// 將一個或多個新元素添加到數組開始,數組中的元素自動后移,返回數組新長度` | |-----|-----| | `4` | ? | |-----|-----| | `5` | `arrayObj.splice(insertPos,0,[item1[, item2[, . . . [,itemN]]]]);``//將一個或多個新元素插入到數組的指定位置,插入位置的元素自動后移,返回""。` | |-----|-----| **4.3數組元素的刪除** | `1` | `arrayObj.pop();?``//移除最后一個元素并返回該元素值` | |-----|-----| | `2` | ? | |-----|-----| | `3` | `arrayObj.shift();?``//移除最前一個元素并返回該元素值,數組中元素自動前移` | |-----|-----| | `4` | ? | |-----|-----| | `5` | `arrayObj.splice(deletePos,deleteCount);?``//刪除從指定位置deletePos開始的指定數量deleteCount的元素,數組形式返回所移除的元素` | |-----|-----| **4.4數組的截取和合并** | `1` | `arrayObj.slice(start, [end]);?``//以數組的形式返回數組的一部分,注意不包括 end 對應的元素,如果省略 end 將復制 start 之后的所有元素` | |-----|-----| | `2` | ? | |-----|-----| | `3` | `arrayObj.concat([item1[, item2[, . . . [,itemN]]]]);?``//將多個數組(也可以是字符串,或者是數組和字符串的混合)連接為一個數組,返回連接好的新的數組` | |-----|-----| **5.棧方法** JS數組也提供了一種讓數組的行為類似于其他數據結構的方法,數組表現的就像棧一樣。棧是一種可以限制插入和刪除項,后進先出的數據結構,也就是最新添加的項最早被移除。而棧中項的插入(推入)和移除(彈出)。只發生在棧頂。JS為數組專門提供了push()和pop()方法,以便實現類似棧的行為; ~~~ var names=["張三","李四"]; names.push("王五"); //添加另一項 names[3]="趙六" //添加一項 alert(names.length); //4 var item=names.pop(); //去的最后一項 alert(item); ~~~ **6.隊列方法** 棧數據結構的訪問規則是后進先出,而隊列的數據結構的訪問規則是先進先出。隊列在列表的末端添加項,從列表的前端移除項。 ~~~ var names=["張三","李四"]; names.push("王五"); //添加另一項 names[3]="趙六" //添加一項 alert(names.length); //4 var item=names.shift(); //取得第一項 alert(item); ~~~ **7.重排序方法** ~~~ var values=[4,2,5,7,1]; alert(values.sort()); //sort正序 alert(values.reverse()); //reverse倒序 ~~~ **8.位置方法** 位置方法splice()方法,這個方法是最強大的數組方法了,它有很多種用法。splice()的主要用途是向數組的中部插入項,但使用這種方法的方式有三種; 刪除:可以刪除任意數量的項,只需指定2個參數:要刪除的起始位置和要刪除的項數,例如? splice(0,2)會刪除數組中的前兩項 插入:可以向指定位置插入任意數量的項,只需提供3個參數,起始位置0(要刪除的項數)和要插入的項,如果要插入多個項,可以再傳入第四,第五,以致任意多個項,例如splice(2,0,"張三三","李四四")會從當前數組的位置2開始插入 替換:可以向指定位置插入任意數量的項,且同時刪除任意數量的項,只需指定3個參數:起始位置,要刪除的項數和要插入的任意數量的項,插入的項數不必與刪除的項數相等。例如splice(2,1,"張三三","李四四")會刪除當前數組位置2的項,然后再從位置2開始插入字符串; 后面還有更深入的迭代和縮小方法,留著下次討論;
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看