溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

jquery怎么定義數(shù)組元素個(gè)數(shù)

發(fā)布時(shí)間:2022-03-05 10:12:10 來(lái)源:億速云 閱讀:218 作者:iii 欄目:web開(kāi)發(fā)

這篇文章主要介紹“jquery怎么定義數(shù)組元素個(gè)數(shù)”,在日常操作中,相信很多人在jquery怎么定義數(shù)組元素個(gè)數(shù)問(wèn)題上存在疑惑,小編查閱了各式資料,整理出簡(jiǎn)單好用的操作方法,希望對(duì)大家解答”jquery怎么定義數(shù)組元素個(gè)數(shù)”的疑惑有所幫助!接下來(lái),請(qǐng)跟著小編一起來(lái)學(xué)習(xí)吧!

  1.認(rèn)識(shí)數(shù)組

  數(shù)組就是某類數(shù)據(jù)的集合,數(shù)據(jù)類型可以是整型、字符串、甚至是對(duì)象

  Javascript不支持多維數(shù)組,但是因?yàn)閿?shù)組里面可以包含對(duì)象(數(shù)組也是一個(gè)對(duì)象),所以數(shù)組可以通過(guò)相互嵌套實(shí)現(xiàn)類似多維數(shù)組的功能

  1.1 定義數(shù)組

  聲明有10個(gè)元素的數(shù)組

  var a=new Array(10);

  此時(shí)為a已經(jīng)開(kāi)辟了內(nèi)存空間,包含10個(gè)元素,用數(shù)組名稱加 [下標(biāo)] 來(lái)調(diào)用,例如 a[2] 但此時(shí)元素并未初始化,調(diào)用將返回 undefined

  以下代碼定義了個(gè)可變數(shù)組,并進(jìn)行賦值

  var a=new Array();

  a[0]=10;

  a[1]="aaa";

  a[2]=12.6;

  上面提過(guò)了,數(shù)組里面可以放對(duì)象,例如下面代碼

  var a=new Array();

  a[0]=true;

  a[1]=document.getElementByIdx_x("text");

  a[2]={x:11, y:22};

  a[3]=new Array();

  數(shù)組可以實(shí)例化的時(shí)候直接賦值,例如

  var a=new Array(1, 2, 3, 4, 5);

  var b=[1, 2, 3, 4, 5];

  a 和 b 都是數(shù)組,只不過(guò)b用了隱性聲明,創(chuàng)建了另一個(gè)實(shí)例,此時(shí)如果用alert(a==b)將彈出false

  1.2 多維數(shù)組

  其實(shí)Javascript是不支持多維數(shù)組的,在asp里面可以用 dim a(10,3)來(lái)定義多維數(shù)組,在Javascript里面,如果用 var a=new Array(10,3) 將報(bào)錯(cuò)

  但是之前說(shuō)過(guò),數(shù)組里面可以包含對(duì)象,所以可以把數(shù)組里面的某個(gè)元素再聲明為數(shù)組,例如

  var a=new Array();

  a[0]=new Array();

  a[0][0]=1;

  alert(a[0][0]); //彈出 1

  聲明的時(shí)候賦值

  var a=new Array([1,2,3], [4,5,6],  [7,8,9]);

  var b=[[1,2,3], [4,5,6], [7,8,9]];

  效果一樣,a采用常規(guī)實(shí)例化,b是隱性聲明,結(jié)果都是生成一個(gè)多維數(shù)組

  1.3 Array literals

  這個(gè)還真不知中文怎么叫,文字?jǐn)?shù)組?

  說(shuō)到數(shù)組,不得不說(shuō)到Array Literals,數(shù)組其實(shí)是特殊的對(duì)象,對(duì)象有特有屬性和方法,通過(guò) 對(duì)象名.屬性 、對(duì)象.方法() 來(lái)取值和調(diào)用,而數(shù)組是通過(guò)下標(biāo)來(lái)取值,Array Literals跟數(shù)組有很多相似,都是某數(shù)據(jù)類型的集合,但是Array Literals從根本來(lái)說(shuō),是個(gè)對(duì)象,聲明和調(diào)用,跟數(shù)組是有區(qū)別

  var aa=new Object();

  aa.x="cat";

  aa.y="sunny";

  alert(aa.x);  //彈出cat

  創(chuàng)建一個(gè)簡(jiǎn)單的對(duì)象,一般調(diào)用是通過(guò)aa.x,而如果當(dāng)成Array literals的話,用alert(aa[“x”])一樣會(huì)彈出cat

  var a={x:"cat",  y:"sunny"};

  alert(a["y"]); //彈出sunny

  這是另一種創(chuàng)建對(duì)象的方法,結(jié)果是一樣的

  2.數(shù)組元素的操作

  上面已經(jīng)說(shuō)過(guò),可以通過(guò) 數(shù)組[下標(biāo)] 來(lái)讀寫元素

  下標(biāo)的范圍是 0 – (23(上標(biāo)2) -1),當(dāng)下標(biāo)是負(fù)數(shù)、浮點(diǎn)甚至布爾值的時(shí)候,數(shù)組會(huì)自動(dòng)轉(zhuǎn)換為對(duì)象類型,例如

  var b=new Array();

  b[2.2]="XXXXX";

  alert(b[2.2]); //-> XXXXX

  此時(shí)相當(dāng)于b[“2.2”]=“XXXXX”

  2.1數(shù)組的循環(huán)

  var a=[1,2,3,4,5,6];

  for(var i=0; i

  alert(a[i]);

  }

  這是最常用的,歷遍數(shù)組,代碼將依次彈出1至6

  還有一種常用的

  var a=[1,2,3,4,5,6];

  for(var e in a){

  alert(e);

  }

  還是依次彈出1至6,for…in是歷遍對(duì)象(數(shù)組是特殊的對(duì)象)對(duì)象,用在數(shù)組上,因?yàn)閿?shù)組沒(méi)有屬性名,所以直接輸出值,這結(jié)構(gòu)語(yǔ)句用在對(duì)象上,例如下面

  var a={x:1,y:2,z:3};

  for(var e in a){

  alert(e  + ":" + a[e]);

  }

  此時(shí)e取到的是屬性名,即 x、y、x,而要取得值,則采用 數(shù)組名[屬性],所以 a[e] 等同于 a[“x”]、a[“y”]、a[“z”]

  2.2數(shù)組常用函數(shù)

  concat

  在現(xiàn)有數(shù)組后面追加數(shù)組,并返回新數(shù)組,不影響現(xiàn)有數(shù)組

  var a=[123];

  var b="sunnycat";

  var c=[""ido"];

  var d={x:3.14, y:"SK"};

  var e=[1,2,3,4,[5,6,[7,8]]];

  alert(a.concat(b));   // -> 123,sunnycat

  alert(a); //  -> 123

  alert(b.concat(c, d));    // -> sunnycat  Object]

  alert(c.concat(b));   // ->

  alert(e.concat(11,22,33).join(" #  "));    // -> 1 # 2 # 3  # 4 # 5,6,7,8 # 11 # 22 # 33

  需要注意的是只能用于數(shù)組或字符串,如果被連接(前面的a)的是數(shù)值、布爾值、對(duì)象,就會(huì)報(bào)錯(cuò),字符串連接數(shù)組時(shí),字符串會(huì)跟數(shù)組首元素拼接成新元素,而數(shù)組連接字符串則會(huì)追加新元素(這點(diǎn)我也不清楚原委,知情者請(qǐng)透露),對(duì)于數(shù)組里面包含數(shù)組、對(duì)象的,連接后保持原樣

到此,關(guān)于“jquery怎么定義數(shù)組元素個(gè)數(shù)”的學(xué)習(xí)就結(jié)束了,希望能夠解決大家的疑惑。理論與實(shí)踐的搭配能更好的幫助大家學(xué)習(xí),快去試試吧!若想繼續(xù)學(xué)習(xí)更多相關(guān)知識(shí),請(qǐng)繼續(xù)關(guān)注億速云網(wǎng)站,小編會(huì)繼續(xù)努力為大家?guī)?lái)更多實(shí)用的文章!

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI