久久国产成人av_抖音国产毛片_a片网站免费观看_A片无码播放手机在线观看,色五月在线观看,亚洲精品m在线观看,女人自慰的免费网址,悠悠在线观看精品视频,一级日本片免费的,亚洲精品久,国产精品成人久久久久久久

分享

js 數(shù)組

 天絕緣 2009-10-29
數(shù)組有四種定義的方式
使用構(gòu)造函數(shù):
var a = new Array();
var b = new Array(8);
var c = new Array("first", "second", "third");
或者數(shù)組直接量:
var d = ["first", "second", "third"];
屬性
Array只有一個(gè)屬性,,就是length,,length表示的是數(shù)組所占內(nèi)存空間的數(shù)目,而不僅僅是數(shù)組中元素的個(gè)數(shù),,在剛才定義的數(shù)組中,,b.length的值為8
<script>
var a = new Array("first", "second", "third")
a[48] = "12"
document.write(a.length)
//顯示的結(jié)果是49
</script>
數(shù)組的length屬性是可寫(xiě)的,這是一個(gè)非常有意思的屬性,,我們可以通過(guò)這種方法來(lái)截取數(shù)組
<script>
var a = new Array("first", "second", "third")
delete a[1]
document.write(a.length)
//顯示的結(jié)果是3,,說(shuō)明即使刪除也無(wú)法改變數(shù)組的長(zhǎng)度
var a = new Array("first", "second", "third")
a.length = 1
document.write(a.length)
//顯示的結(jié)果是1,說(shuō)明只剩下一個(gè)元素了
</script>
方法
這里并沒(méi)有包括IE和FF并不兼容的一些方法:
toString():把數(shù)組轉(zhuǎn)換成一個(gè)字符串
toLocaleString():把數(shù)組轉(zhuǎn)換成一個(gè)字符串
join():把數(shù)組轉(zhuǎn)換成一個(gè)用符號(hào)連接的字符串
shift():將數(shù)組頭部的一個(gè)元素移出
unshift():在數(shù)組的頭部插入一個(gè)元素
pop():從數(shù)組尾部刪除一個(gè)元素
push():把一個(gè)元素添加到數(shù)組的尾部
concat():給數(shù)組添加元素
slice():返回?cái)?shù)組的部分
reverse():將數(shù)組反向排序
sort():對(duì)數(shù)組進(jìn)行排序操作
splice():插入,、刪除或者替換一個(gè)數(shù)組元素
toString() 方法,,toLocaleString()方法的作用類(lèi)似,F(xiàn)F下的作用是完全相同的,,IE的話(huà)如果元素是字符串,,會(huì)在“,”后面加上一個(gè)空格,,如果元素是數(shù)字,,會(huì)擴(kuò)展到兩位小數(shù),,兩者都會(huì)改變字符串的length屬性,所以考慮到兼容性,,盡量不要使用toLocaleString()方法,。
<script>
var a = new Array(1, 2, 3, [4, 5, [6, 7]])
var b = a.toString() //b為字符串形式的 "1, 2, 3, 4, 5, 6, 7"
var c = new Array(1, 2, 3, [4, 5, [6, 7]])
var d = c.toLocaleString() //d為字符串形式的 "1, 2, 3, 4, 5, 6, 7"
//toString()方法和toLocaleString()方法都可以拆解多維數(shù)組
</script>
join()方法將數(shù)組中的所有元素轉(zhuǎn)換成字符串,然后連接起來(lái),,這剛好和String的split()方法是一個(gè)相反的操作,。join()默認(rèn)是使用“,”作為分隔符,當(dāng)然你也可以在方法中指定分隔符
<script>
var a = new Array("first", "second", "third")
var s = a.join("...")
document.write(s)
//顯示的結(jié)果是“first...second...third”
</script>
pop()方法可以從數(shù)組尾部刪除若干個(gè)元素,,push()方法把一個(gè)元素添加到數(shù)組的尾部,,這兩個(gè)方法剛好是兩個(gè)相反的操作。兩個(gè)都是對(duì)原來(lái)的數(shù)組進(jìn)行操作,,但是要注意push()方法返回的是新的數(shù)組的長(zhǎng)度,,而pop()方法則返回被刪去的那個(gè)元素。
<script>
var a = new Array(1, 2, 3)
var b = a.push(4,5,[6,7]) //a為[1, 2, 3, 4, 5, [6, 7]] b為6 注意push()方法不會(huì)幫你打開(kāi)一個(gè)數(shù)組
var c = new Array(1, 2, 3, 4, "first")
var d = c.pop() //c為[1, 2, 3, 4] d為字符串形式的"first"
</script>
shift() 方法可以從數(shù)組頭部刪除一個(gè)元素,,unshift()方法把若干元素添加到數(shù)組的頭部,,這兩個(gè)方法剛好是兩個(gè)相反的操作。兩個(gè)都是對(duì)原來(lái)的數(shù)組進(jìn)行操作,,但是要注意unshift()方法返回的是新的數(shù)組的長(zhǎng)度,,而shift()方法則返回被刪去的那個(gè)元素。
<script>
var a = new Array(1, 2, 3)
var b = a.unshift(4,5,[6,7]) //a為[4, 5, [6, 7], 1, 2, 3] b為6 注意unshift()方法不會(huì)幫你打開(kāi)一個(gè)數(shù)組,,還有就是被插入數(shù)值的順序
var c = new Array("first", 1, 2, 3, 4)
var d = c.shift() //c為[1, 2, 3, 4] d為字符串形式的"first"
</script>
concat()方法可以返回一個(gè)在原有數(shù)組上增添了元素的數(shù)組,,元素用“,”分隔,元素中如果有數(shù)組,,將被展開(kāi)并繼續(xù)添加,,但不支持多維數(shù)組形式的展開(kāi)添加
<script>
var a = new Array("first", "second", "third")
s = a.concat("fourth",["fifth", "sixth"],["seventh", ["eighth", "ninth"]])
document.write(s[7])
// 顯示的結(jié)果是“eighth, ninth”,說(shuō)明“eighth, ninth”是以數(shù)組的形式被添加了進(jìn)去,,此是s的值為["first", "second", "third", "fourth", "fifth", "sixth", "seventh", ["eighth", "ninth"]]
</script>
slice()方法返回?cái)?shù)組的一個(gè)片斷,,或者說(shuō)是子數(shù)組。slice()的參數(shù)表示字?jǐn)?shù)組的始末位置,,如果只有一個(gè)參數(shù),,就表示從該處開(kāi)始一直取到最后,如果參數(shù)出現(xiàn)負(fù)數(shù),,則表示倒數(shù)的某個(gè)位置,。
<script>
var a = new Array(1, 2, 3, 4, 5)
var b = a.slice(3) //b為[4, 5]
var c = a.slice(-3) //c為[3, 4, 5]
var d = a.slice(1,-1) //d為[2, 3, 4]
var e = a.slice(-3,-1) //e為[3, 4]
</script>
reverse()方法將數(shù)組反向排序,他并不創(chuàng)建和返回一個(gè)新的數(shù)組,,而是在原有的數(shù)組上進(jìn)行操作
<script>
var a = new Array("first", "second", "third")
a.reverse()
document.write(a)
//顯示的結(jié)果是“third,second,first”,,這時(shí)候數(shù)組的順序已經(jīng)顛倒了
</script>
sort()方法的作用是對(duì)數(shù)組進(jìn)行排序,,這是一個(gè)非常奇特的方法,我不知道當(dāng)初創(chuàng)作他的人是出于懶惰還是聰明,,這是一個(gè)讓我印象深刻的方法,。
sort()方法的參數(shù)是一個(gè)有兩個(gè)參數(shù),并且有返回值的函數(shù),,如果返回的值大于零,,則說(shuō)明前一個(gè)參數(shù)比后一個(gè)參數(shù)大,等于零則相等,,小于零說(shuō)明前一個(gè)參數(shù)比后一個(gè)小,,而相對(duì)小的那個(gè)參數(shù)將出現(xiàn)在排序的前列。
sort()方法直接在數(shù)組上進(jìn)行操作,,同時(shí)也返回值,,但是兩者似乎是等價(jià)的。sort()方法默認(rèn)是用字母的順序進(jìn)行排序
<script>
var a = new Array(33, 4, 111, 543)
a.sort(way)
function way(x, y){
    if (x % 2 ==0)
        return 1;
    if (x % 2 !=0)       
        return -1;
}
//排序的結(jié)果是使奇數(shù)在前偶數(shù)在后
</script>
splice()方法的作用是插入,、刪除或者替換一個(gè)數(shù)組元素,,他不光會(huì)在原有的數(shù)組上進(jìn)行修改,還會(huì)返回被處理掉的內(nèi)容,,因此這是一個(gè)功能強(qiáng)大,,但是不容易使用的方法,splice()方法用前兩個(gè)參數(shù)進(jìn)行定位,,余下的參數(shù)表示插入部分,。
<script>
var a = new Array(1, 2, 3, 4, 5)
var b = a.splice(2) //a為[1, 2] b為[3, 4, 5]
var c = new Array(1, 2, 3, 4, 5)
var d = c.splice(2,2) //c為[1, 2, 5] d為[3, 4]
var e = new Array(1, 2, 3, 4, 5)
var f = f.splice(-4,2) //e為[1, 4, 5] f為[2, 3]
var g = new Array(1, 2, 3, 4, 5)
var h = g.splice(-2,-2) //第二個(gè)參數(shù)表示長(zhǎng)度,因此負(fù)數(shù)在此無(wú)效
var i = new Array(1, 2, 3, 4, 5)
var j = i.splice(2,2,"first","second","third") //i為[1, 2, "first", "second", "third", 5] j為[3, 4] 后面部分會(huì)自動(dòng)前后移動(dòng),,以保持?jǐn)?shù)組的連續(xù)性
var k = new Array(1, 2, 3, 4, 5)
var l = k.splice(2,2,["first","second"],"third") //k為[1, 2, ["first", "second"], "third", 5] l為[3, 4] splice()方法不會(huì)展開(kāi)數(shù)組,,只直接寫(xiě)入
</script>
本文來(lái)自CSDN博客,轉(zhuǎn)載請(qǐng)標(biāo)明出處:http://blog.csdn.net/sony87615/archive/2009/09/07/4528708.aspx

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,,所有內(nèi)容均由用戶(hù)發(fā)布,,不代表本站觀(guān)點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式,、誘導(dǎo)購(gòu)買(mǎi)等信息,,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,,請(qǐng)點(diǎn)擊一鍵舉報(bào),。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶(hù) 評(píng)論公約

    類(lèi)似文章 更多