最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

JavaScript入門教程之引用類型

 更新時(shí)間:2016年05月04日 14:34:55   作者:語折  
引用類型是一種數(shù)據(jù)結(jié)構(gòu),用于將數(shù)據(jù)和功能組織在一起。這篇文章主要介紹了JavaScript入門教程之引用類型的相關(guān)資料,需要的朋友一起學(xué)習(xí)吧

引用類型

引用類型是一種數(shù)據(jù)結(jié)構(gòu),用于將數(shù)據(jù)和功能組織在一起。它也常被稱為類,但這種稱呼并不妥當(dāng)。盡管 ECMAScript從技術(shù)上講是一門面向?qū)ο蟮恼Z言,但它不具備傳統(tǒng)的面向?qū)ο笳Z言所支持的類和接口等基本結(jié)構(gòu)。引用類型有時(shí)候也被稱為對(duì)象定義,因?yàn)樗鼈兠枋龅氖且活悓?duì)象所具有的屬性和方法。

前面提到過,引用類型的值便是對(duì)象,在ECMAScript中,引用類型是一種數(shù)據(jù)結(jié)構(gòu),用于將數(shù)據(jù)和功能組織在一起,而對(duì)象則是某個(gè)特定引用類型的實(shí)例。

var a=new Object(); 

  上面便聲明了一個(gè)引用類型為Object的實(shí)例,并將這個(gè)實(shí)例存儲(chǔ)到變量a中,也就是說這個(gè)變量實(shí)際是并不是包含了這個(gè)實(shí)例本身,而是指向這個(gè)實(shí)例的指針。

  對(duì)于Object類型,常用對(duì)象字面量表示法來創(chuàng)建實(shí)例 既var a={name:"Nick",age:20}這樣做的優(yōu)點(diǎn)是給人封裝的感覺。而對(duì)象的訪問則是使用了點(diǎn)表示法或者方括號(hào)表示法。a.name等價(jià)于a["name"],注意此處的"name"是以字符串表示的。

  對(duì)于Array類型,則可以使用數(shù)組字面量表示法。

    對(duì)于Array類型,可以使用length來改變數(shù)組的長度。(從數(shù)組的末尾添加或者移除項(xiàng))

    檢測數(shù)組的方法是Array.isArray(value)方法

    轉(zhuǎn)換方法:toString()轉(zhuǎn)換成以“,”分割各項(xiàng)的一個(gè)字符串。valueOf(),返回的依舊是數(shù)組。toLocaleString()可以用下例實(shí)現(xiàn)。

var p1={
toString:function(){return "guo";},
toLocaleString:function(){return "yuzhe";}
}
var p2={
toString:function(){return "song";},
toLocaleString:function(){return "hap";}
}
var p=[p1,p2];
alert(p); //guo,song
alert(p.toLocaleString()); //yuzhe,hap 

可見 alert在輸出前先調(diào)用了toString()方法,此外還有join()方法,用于以指定的符號(hào)返回成字符串 ,其默認(rèn)的(不設(shè)置參數(shù))為“,”。

    棧方法:push()在末尾添加項(xiàng),返回?cái)?shù)組長度。pop()在末尾刪除項(xiàng),返回刪除項(xiàng)。

    隊(duì)列方法:shift()溢出數(shù)組第一項(xiàng),返回該項(xiàng)。unshift()在首段添加項(xiàng),返回?cái)?shù)組長度。

    重排序方法(返回值為數(shù)組):

        reverse()反轉(zhuǎn)順序。a[length-1]=a[0]

        sort()升序排序法 默認(rèn)的sort()是以ASCII排序的,而非我們認(rèn)為的數(shù)字大小,所以比較大小需要這樣使用

function compare(no1,no2){
if(no1<no2){
return -1;}
else if(no1>no2){
return 1;}
else{
return 0;} 
}
var a=[1,2,3,4,6,5];
a.sort(compare);
alert(a)

若想產(chǎn)生降序效果,只需反轉(zhuǎn)if語句。

    操作方法:

        concat()創(chuàng)建了一個(gè)副本,對(duì)原數(shù)組無影響,作用是添加接受的參數(shù)到數(shù)組的末尾。

        slice()創(chuàng)建一個(gè)副本,接受1或者2個(gè)參數(shù)(返回項(xiàng)的起始和結(jié)束位置,不包含結(jié)束位置),在只有一個(gè)參數(shù)的情況下,返回從指定位置到結(jié)尾所有項(xiàng)。如果參數(shù)為負(fù)數(shù),則結(jié)果為length+arguments,若結(jié)束位置小于起始位置,則返回空數(shù)組。

        splice():1.刪除方法--指定兩個(gè)參數(shù),刪除的第一項(xiàng)的位置和刪除的項(xiàng)數(shù)。

            2.插入方法--指定三個(gè)參數(shù),起始位置,0(要?jiǎng)h除的個(gè)數(shù)),要插入的項(xiàng)。

            3.替換方法--指定三個(gè)參數(shù),起始位置,刪除的個(gè)數(shù),要插入的項(xiàng)

            插入/替換的位置是起始位置。

    位置方法:

        indexOf()返回要查找的項(xiàng)的數(shù)組下表,沒有則返回-1.參數(shù):要查找的項(xiàng)和(可選的)查找起點(diǎn)位置的索引(下標(biāo))。

        lastIndexOf()是indexOf()的逆序。

    迭代方法:

        2個(gè)參數(shù):要運(yùn)行的函數(shù)和(可選的)的作用域,傳入這些方法中的函數(shù)需要有三個(gè)參數(shù)(item(數(shù)組項(xiàng)的值),index(該項(xiàng)的位置),array(數(shù)組對(duì)象本身)).

        every()對(duì)數(shù)組中的每一項(xiàng)運(yùn)行給定函數(shù),每一項(xiàng)都返回ture 則返回true

        filter()返回會(huì)返回true的項(xiàng)組成的數(shù)組

        forEach()對(duì)每一項(xiàng)運(yùn)行給定函數(shù),無返回值

        map()返回每次函數(shù)執(zhí)行結(jié)果組成的數(shù)組

        some()若有一項(xiàng)為true,則返回true

<script>
var a=[1,2,3,4];
var b=a.every(function(item,index,array){
return item>2;
});
alert(b); //false
</script>

    歸并方法:

        reduce()從數(shù)字第一項(xiàng)開始遍歷,reduceRight()從數(shù)組最后一項(xiàng)開始遍歷

        使用reduce()來求數(shù)組中的所有和      

<script>
var a=[1,2,3,4];
var b=a.reduce(function(prve,cur,index,array){
return prve+cur;
});
alert(b); //10

第一次執(zhí)行時(shí),prev為1,cur為2 ,第二次執(zhí)行時(shí),prev為3,cur為3。

以上所述是小編給大家介紹的JavaScript入門教程之引用類型的相關(guān)內(nèi)容,希望對(duì)大家有所幫助!

相關(guān)文章

最新評(píng)論

海晏县| 柘城县| 锡林郭勒盟| 思茅市| 东阿县| 建水县| 扎囊县| 五峰| 宜兰市| 天镇县| 车致| 金湖县| 诏安县| 德惠市| 延吉市| 古田县| 巴彦淖尔市| 曲阜市| 沛县| 河津市| 延川县| 上思县| 屏南县| 突泉县| 台中县| 慈利县| 崇明县| 沙田区| 镇康县| 大丰市| 锦屏县| 韶山市| 勃利县| 万州区| 博兴县| 柞水县| 嵊泗县| 沐川县| 卢龙县| 瑞昌市| 德昌县|