<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>

                合規國際互聯網加速 OSASE為企業客戶提供高速穩定SD-WAN國際加速解決方案。 廣告
                [TOC] # 構造 ## 構造器 ~~~ 1、var list=new Array(); 2、var list=new Array(size); 3、var list=new Array(element0,element1,...elementn); ~~~ ## 字面量方式 ~~~ var Array[element0,element1,...elementn]; ~~~ ~~~ var list[1,true,null,undefined,{x:1},[1,2,3]]; ~~~ # 數組對象屬性 |屬性 | 作用 | |---------|-------------| |length 屬性 | 表示數組的長度,即其中元素的個數| | prototype 屬性 |返回對象類型原型的引用| | constructor 屬性 |表示創建對象的函數| ## length 屬性 通過一些操作來講解length屬性 `var arr=[1,2,3,4,5,6,7,8,9,10];`//定義了一個包含10個數字的數組。 數組的長度屬性是可變的 ~~~ alert(arr.length); //顯示數組的長度10 arr.length=15; //增大數組的長度,length屬性是可變的 alert(arr.length); //顯示數組的長度已經變為15 ~~~ ## prototype 屬性 `prototype` 屬性返回對象類型原型的引用。`prototype` 屬性是`object`共有的。 `objectName.prototype` `objectName` 參數是`object`對象的名稱。 說明:用 prototype 屬性提供對象的類的一組基本功能。 對象的新實例“繼承”賦予該對象原型的操作。 對于數組對象,用以下例子說明prototype 屬性的用途。 給數組對象添加返回數組中最大元素值的方法。要完成這一點,聲明一個函數,將它加入 Array.prototype, 并使用它。 ~~~ function array_max( ) { var i, max = this[0]; for (i = 1; i < this.length; i++) { if (max < this[i]) max = this[i]; } return max; } Array.prototype.max = array_max; var x = new Array(1, 2, 3, 4, 5, 6); var y = x.max( ); ~~~ 該代碼執行后,y 保存數組 x 中的最大值,或說 6。 ## constructor 屬性 `constructor` 屬性表示創建對象的函數。 `object.constructor //object`是對象或函數的名稱。 說明:`constructor` 屬性是所有具有`prototype` 的對象的成員。它們包括除 `Global` 和 `Math`對象以外的所有`JScript`固有對象。`constructor`屬性保存了對構造特定對象實例的函數的引用。 ~~~ x = new String("Hi"); if (x.constructor == String) // 進行處理(條件為真)。 //或 function MyFunc { // 函數體。 } y = new MyFunc; if (y.constructor == MyFunc) // 進行處理(條件為真)。 ~~~ # 對象方法 說明:部分是ECMAScript5的新特性(IE678不支持) |方法 | 作用 | | --------- |-------------| |concat() | 連接兩個或者更多的數組,并返回結果| |join() | 將數組的元素組起一個字符串| |pop() | 刪除并返回數組的最后一個元素| |push() | 數組末尾添加一個或者多個元素,返回新的長度| |reverse|顛倒數組中元素的順序| |shift()|刪除并返回數組的第一個元素| |slice()|從某個已有的數組返回選定的元素| |sort()|對數組元素排序| |splice() | 刪除元素,并向數組添加新元素| |toSource() | 返回該對象的源代碼| |toString()|把數組轉化為字符串并返回結果| |toLocalString()|把數組轉化為本地元素并返回結果| |unshift|向數組開頭添加一個或者更多的元素,并返回新的長度| |valueof()|返回數組對象的原始值| |forEach()|遍歷數組對象| |map()|對數組做一些映射| |filter()|過濾| |every()|檢查判斷| |some()|檢查判斷| |reduce()|兩兩執行一定的操作| |reduceRight()|從右到左執行操作| |indexOf()|數組檢索查找某個元素| |Array.isArray(\[\])|判斷是否是數組| ## concat concat作用是拼接數組,需要注意的是也可以把一個數組元素作為拼接的元素,如果這樣的話,數組會被拉平,再和其它的元素拼接起來成為新的數組,但是不會被拉平兩次,concat不會修改原數組。 ~~~ var arr=[1,2,3,4,5]; arr.concat([10,11],13);//[1,2,3,4,5,10,11,13] arr.concat([1,[2,3]]);//[1,2,3,4,5,1,[1,3]] ~~~ ## slice slice(a,b)a和b可以取負數,表示從a位置開始截取到b位置的一段數組,是一個左閉右開的區間,a和b可以取負數,如果是負數代表倒數第a/b個元素 ~~~ var arr=[1,2,3,4,5]; arr.slice(1,3);//[2,3] arr.slice(1);//[2,3,4,5] arr.slice(1,-1);//[2,3,4] arr.slice(-4,-3);//[2] ~~~ ## splice splice刪除元素并向數組添加新元素 `object.splice(a)`從左邊開始刪除a個元素 `object.splice(a,b)`從a位置開始截取其中的b個元素 `object.splice(a,b,c,d)`從a位置開始截取b個元素,并將c和d或者更多的元素插入原數組 需要注意的是splice會修改原數組 ~~~ var arr=[1,2,3,4,5]; arr.splice(2);//[3,4,5] arr;//[1,2];原數組被修改了 var arr=[1,2,3,4,5]; arr.splice(2,2);//[3,4] arr;//[1,2,5]; var arr=[1,2,3,4,5]; arr.splice(1,1,‘a’,‘b’);//[2] arr;//[1,"a","b",3,4,5]; ~~~ ## foreach foreach()函數從頭到尾把數組遍歷一遍。有三個參數分別是:數組元素,元素的索引,數組本身 ~~~ var arr = [1, 2, 3, 4, 5]; arr.forEach(function(x, index, a) {//分別對應:數組元素,元素的索引,數組本身 console.log(x + '|' + index + '|' + (a === arr)); }); // 1|0|true // 2|1|true // 3|2|true // 4|3|true // 5|4|true ~~~ ## 常用方法 [https://juejin.im/post/5aab704ef265da239a5f8f52](https://juejin.im/post/5aab704ef265da239a5f8f52) # 自定義排序 ~~~ var list = [ { max:3, avg:2, min:1 }, { max:10, avg:15, min:20 } ]; // 根據max字段對list對象進行排序,從小到大的順序 // x,y就是要比較的數組的單個元素,這里就是list中的一個元素 // 排序方法主要是要提供一個比較大小的規則,換句話說也就是要說明誰大誰小 // 返回值為true or false function sortByField(x, y) { return x.max - y.max; } console.log(list.sort(sortByField)); ~~~
                  <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>

                              哎呀哎呀视频在线观看