亚洲国产日韩欧美在线a乱码,国产精品路线1路线2路线,亚洲视频一区,精品国产自,www狠狠,国产情侣激情在线视频免费看,亚洲成年网站在线观看

JavaScript入門教程之引用類型

時(shí)間:2024-06-12 06:06:11 JavaScript 我要投稿
  • 相關(guān)推薦

JavaScript入門教程之引用類型

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

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

  var a=new Object();

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

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

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

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

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

  轉(zhuǎn)換方法:toString()轉(zhuǎn)換成以“,”分割各項(xiàng)的一個字符串。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,songalert(p.toLocaleString()); //yuzhe,hap

  可見 alert在輸出前先調(diào)用了toString()方法,此外還有join()方法,用于以指定的符號返回成字符串 ,其默認(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(no1no2){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)建了一個副本,對原數(shù)組無影響,作用是添加接受的參數(shù)到數(shù)組的末尾。

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

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

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

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

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

  位置方法:

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

  lastIndexOf()是indexOf()的逆序。

  迭代方法:

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

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

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

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

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

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

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

  歸并方法:

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

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

  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)容,希望對大家有所幫助!

【JavaScript入門教程之引用類型】相關(guān)文章:

關(guān)于數(shù)據(jù)類型的Javascript學(xué)習(xí)筆記08-05

常用排序算法之JavaScript實(shí)現(xiàn)代碼段06-04

對javascript的理解08-08

平面設(shè)計(jì)之線的風(fēng)格類型與作用10-05

梵語入門教程08-20

CSS入門教程01-25

小升初語文復(fù)習(xí)之常見病句類型歸納10-20

常用的JavaScript模式09-22

Javascript的this用法簡述08-15

JavaScript學(xué)習(xí)筆記08-24