欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

淺談Javascript數組(推薦)

 更新時間:2016年05月17日 16:27:43   作者:王小傘  
數組,即Array類型,是開發(fā)中最常用的類型之一。這篇文章主要介紹了淺談Javascript數組的相關資料,需要的朋友可以參考下

在程序語言中數組的重要性不言而喻,JavaScript中數組也是最常使用的對象之一,數組是值的有序集合,由于弱類型的原因,JavaScript中數組十分靈活、強大,不像是Java等強類型高級語言數組只能存放同一類型或其子類型元素,JavaScript在同一個數組中可以存放多種類型的元素,而且是長度也是可以動態(tài)調整的,可以隨著數據增加或減少自動對數組長度做更改。

首先,大概說說數組的基本用法。

   數組,即Array類型,是開發(fā)中最常用的類型之一,javascript中的數組和其他語言最大的區(qū)別就是每一項可以保存任何類型的數據,而且數組的大小是可以動態(tài)調整的,有點繞?看看代碼吧

   1.數組的創(chuàng)建:

var arr=new Array(20);
var arr1=["小傘",1,true,undefined,[2,"王"],""] 

第一行用數組構造法創(chuàng)建了一個length值為20的數組,第二行用數組字面量表示法創(chuàng)建了一個多種數據類型并存的數組。

第一行的方法有點小坑,括號里指定的是數組的長度,而不是數組第一個元素是20 ,要想創(chuàng)建有一個元素是20的這么一個數組,還是用字面量法創(chuàng)建吧。

還有一個小坑,看代碼

var arr=[1,2,];
var arr1=[,,,,,]

第一行這句會在IE8以及之前版本中創(chuàng)建一個值分別為1,2,undefined的數組,其他瀏覽器會產生一個兩項分別是1,2的數組

第二行同樣的可能會在不同瀏覽器上包含5項或者6項。(IE9以上修復了這個問題,但還是不推薦這種寫法)

  2.數組元素的基本操作

js的數組非常的靈活,擁有很多數組元素操作的方法,但也有一些小坑,比如:

var arr=[];
arr[0]=1;arr[1]=2;arr.push(3); //arr=[1,2,3]arr[arr.length]=4; //arr=[1,2,3,4]arr.unshift(0); //arr=[0,1,2,3,4];delect arr[2]; //arr=[0,1,undefined,3,4]arr[0]=undefined //arr=[undefined,1,undefined,3,4]

push()方法會給數組最后邊添加一個元素,得到的值可以看注釋,^_^

也可以直接手動在數組下標拓展以為,如第三行,其實就相當于push(4);
那如果想在數組元素最前邊添加呢,別急,有unshift()方法。

與此對應的有刪除元素的pop()方法和shift()方法,分別和push(),unshift()對應,就不再贅述了。

delect 運算符對數組的操作不會刪除掉數組的元素,可以說是用undefined來占個位子,和直接賦值是一樣的。

   3.稀疏數組

稀疏數組是指數組的下標并不是從0開始,一般數組的長度要比元素的個數要多:

var arr1=[undefined];
var arr2=new Array(1);
0 in arr1; //true
0 in arr2; //false
var arr3=new Array(100);
arr3[99]="賦值";
99 in arr3; //true
98 in arr3; //false

arr1中是因為數組第1列是有值的,雖然是undefined,arr2只是指定了數組長度,第1列還是沒有值,所以用in語句會返回false。arr3中給第第100個元素賦值后檢測是有值的,對其他列的key是沒有影響的,所以還是返回了false。

以上所述是小編給大家介紹的Javascript數組的相關知識,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網站的支持!

相關文章

  • BootStrap入門學習第一篇

    BootStrap入門學習第一篇

    這篇文章主要為大家詳細介紹了BootStrap入門學習第一篇,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-08-08
  • js防止表單重復提交的兩種方法

    js防止表單重復提交的兩種方法

    第一種:用flag標識,下面的代碼設置checkSubmitFlg標志;第二種:在onsubmit事件中設置,在第一次提交后使提交按鈕失效,感興趣的朋友可以了解下
    2013-09-09
  • javascript實現簡單的ajax封裝示例

    javascript實現簡單的ajax封裝示例

    這篇文章主要介紹了javascript實現簡單的ajax封裝功能,結合實例形式分析了ajax基本功能與操作實現技巧,需要的朋友可以參考下
    2016-12-12
  • JS使用插件cryptojs進行加密解密數據實例

    JS使用插件cryptojs進行加密解密數據實例

    這篇文章主要介紹了JS使用插件cryptojs進行加密解密數據,結合完整實例形式分析了javascript基于加密插件實現加密解密功能的相關操作技巧,需要的朋友可以參考下
    2017-05-05
  • Web 開發(fā)中Ajax的Session 超時處理方法

    Web 開發(fā)中Ajax的Session 超時處理方法

    下面小編就為大家?guī)硪黄猈eb 開發(fā)中Ajax的Session 超時處理方法。小編覺得挺不錯的,現在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-01-01
  • require簡單實現單頁應用程序(SPA)

    require簡單實現單頁應用程序(SPA)

    下面小編就為大家?guī)硪黄猺equire簡單實現單頁應用程序(SPA)。小編覺得挺不錯的,現在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2016-07-07
  • TypeScript中交叉類型和聯(lián)合類型的區(qū)別詳解

    TypeScript中交叉類型和聯(lián)合類型的區(qū)別詳解

    聯(lián)合類型(Union Types)和交叉類型(Intersection Types)是 TypeScript 中的兩種高級類型,它們都用于組合多個類型并生成新的類型,但它們兩者之間的用法不一樣,本文小編就給大家講講TypeScript中交叉類型和聯(lián)合類型的區(qū)別,需要的朋友可以參考下
    2023-09-09
  • JavaScript實現點擊按鈕后變灰避免多次重復提交

    JavaScript實現點擊按鈕后變灰避免多次重復提交

    注冊的時候需要發(fā)送驗證激活帳號的郵件,為了避免郵件的多次重復發(fā)送,所以可以在點擊了發(fā)送后,設置按鈕變灰,倒計時一段時間后又可重復點擊,具體實現如下,感興趣的朋友可以參考下哈
    2013-07-07
  • js與vue如何實現自動全屏顯示效果

    js與vue如何實現自動全屏顯示效果

    這篇文章主要給大家介紹了關于js與vue如何實現自動全屏顯示效果的相關資料,在vue項目中做一個可以控制頁面全屏展示的效果,文中通過代碼介紹的非常詳細,需要的朋友可以參考下
    2023-12-12
  • js實現本地持久化存儲登錄注冊

    js實現本地持久化存儲登錄注冊

    這篇文章主要為大家詳細介紹了js實現本地持久化存儲登錄注冊,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-08-08

最新評論