亚洲免费乱码视频,日韩 欧美 国产 动漫 一区,97在线观看免费视频播国产,中文字幕亚洲图片

      1. <legend id="ppnor"></legend>

      2. 
        
        <sup id="ppnor"><input id="ppnor"></input></sup>
        <s id="ppnor"></s>

        JavaScript入門教程之引用類型

        字號:


            引用類型是一種數(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)。引用類型有時候也被稱為對象定義,因為它們描述的是一類對象所具有的屬性和方法。
            前面提到過,引用類型的值便是對象,在ECMAScript中,引用類型是一種數(shù)據(jù)結(jié)構(gòu),用于將數(shù)據(jù)和功能組織在一起,而對象則是某個特定引用類型的實例。
            var a=new Object();
            上面便聲明了一個引用類型為Object的實例,并將這個實例存儲到變量a中,也就是說這個變量實際是并不是包含了這個實例本身,而是指向這個實例的指針。
            對于Object類型,常用對象字面量表示法來創(chuàng)建實例 既var a={name:"Nick",age:20}這樣做的優(yōu)點是給人封裝的感覺。而對象的訪問則是使用了點表示法或者方括號表示法。a.name等價于a["name"],注意此處的"name"是以字符串表示的。
            對于Array類型,則可以使用數(shù)組字面量表示法。
            對于Array類型,可以使用length來改變數(shù)組的長度。(從數(shù)組的末尾添加或者移除項)
            檢測數(shù)組的方法是Array.isArray(value)方法
            轉(zhuǎn)換方法:toString()轉(zhuǎn)換成以“,”分割各項的一個字符串。valueOf(),返回的依舊是數(shù)組。toLocaleString()可以用下例實現(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()方法,用于以指定的符號返回成字符串 ,其默認(rèn)的(不設(shè)置參數(shù))為“,”。
            棧方法:push()在末尾添加項,返回數(shù)組長度。pop()在末尾刪除項,返回刪除項。
            隊列方法:shift()溢出數(shù)組第一項,返回該項。unshift()在首段添加項,返回數(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)建了一個副本,對原數(shù)組無影響,作用是添加接受的參數(shù)到數(shù)組的末尾。
            slice()創(chuàng)建一個副本,接受1或者2個參數(shù)(返回項的起始和結(jié)束位置,不包含結(jié)束位置),在只有一個參數(shù)的情況下,返回從指定位置到結(jié)尾所有項。如果參數(shù)為負(fù)數(shù),則結(jié)果為length+arguments,若結(jié)束位置小于起始位置,則返回空數(shù)組。
            splice():1.刪除方法--指定兩個參數(shù),刪除的第一項的位置和刪除的項數(shù)。
            2.插入方法--指定三個參數(shù),起始位置,0(要刪除的個數(shù)),要插入的項。
            3.替換方法--指定三個參數(shù),起始位置,刪除的個數(shù),要插入的項
            插入/替換的位置是起始位置。
            位置方法:
            indexOf()返回要查找的項的數(shù)組下表,沒有則返回-1.參數(shù):要查找的項和(可選的)查找起點位置的索引(下標(biāo))。
            lastIndexOf()是indexOf()的逆序。
            迭代方法:
            2個參數(shù):要運行的函數(shù)和(可選的)的作用域,傳入這些方法中的函數(shù)需要有三個參數(shù)(item(數(shù)組項的值),index(該項的位置),array(數(shù)組對象本身)).
            every()對數(shù)組中的每一項運行給定函數(shù),每一項都返回ture 則返回true
            filter()返回會返回true的項組成的數(shù)組
            forEach()對每一項運行給定函數(shù),無返回值
            map()返回每次函數(shù)執(zhí)行結(jié)果組成的數(shù)組
            some()若有一項為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ù)字第一項開始遍歷,reduceRight()從數(shù)組最后一項開始遍歷
            使用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í)行時,prev為1,cur為2 ,第二次執(zhí)行時,prev為3,cur為3。
            以上所述是小編給大家介紹的JavaScript入門教程之引用類型的相關(guān)內(nèi)容,希望對大家有所幫助!