<span id="mktg5"></span>

<i id="mktg5"><meter id="mktg5"></meter></i>

        <label id="mktg5"><meter id="mktg5"></meter></label>
        最新文章專題視頻專題問答1問答10問答100問答1000問答2000關鍵字專題1關鍵字專題50關鍵字專題500關鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關鍵字專題關鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
        問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
        當前位置: 首頁 - 科技 - 知識百科 - 正文

        《JavaScript高級編程》學習筆記之object和array引用類型_javascript技巧

        來源:懂視網 責編:小采 時間:2020-11-27 21:45:01
        文檔

        《JavaScript高級編程》學習筆記之object和array引用類型_javascript技巧

        《JavaScript高級編程》學習筆記之object和array引用類型_javascript技巧:本文給大家分享我的javascript高級編程學習筆記之object和array引用類型,涉及到javascript引用類型相關知識,大家一起看看把。 1. Object類型 大多數引用類型值都是Object類型的實例;而且Object也是ECMAScript中使用最多的一個類型。 創建
        推薦度:
        導讀《JavaScript高級編程》學習筆記之object和array引用類型_javascript技巧:本文給大家分享我的javascript高級編程學習筆記之object和array引用類型,涉及到javascript引用類型相關知識,大家一起看看把。 1. Object類型 大多數引用類型值都是Object類型的實例;而且Object也是ECMAScript中使用最多的一個類型。 創建

        本文給大家分享我的javascript高級編程學習筆記之object和array引用類型,涉及到javascript引用類型相關知識,大家一起看看把。

        1. Object類型

        大多數引用類型值都是Object類型的實例;而且Object也是ECMAScript中使用最多的一個類型。

        創建Object實例有如下兩種方式:

        new操作符后跟Object構造函數:

        對象字面量表示法:

        2. Array類型

        除了Object之外,Array類型恐怕是ECMAScript中最常用的類型了。
        ECMAScript數組的每一項可以保存任何類型的數據(例如,第一個位置可存放字符串,第二個位置保存數值,第三個位置保存對象,以此類推)。而且ECMAScript數組的大小是可以動態調整的,即可以隨著數據的添加自動增長以容納新增數據。

        創建數組的基本方式有兩種,

        使用Array構造函數:

        數組字面量表示法

        注:數組的length屬性很有特點——它不是只讀的。因此通過設置這個屬性,可以從數組的末尾移除或添加項。例如,

        2.1 檢測數組

        對于一個網頁,或者一個全局作用域而言,使用instanceof操作符就能判斷某個對象是不是數組:

        instanceof操作符的問題在于,它假定只有一個全局執行環境。如果網頁中包含多個框架,那實際上就存在兩個以上不同的全局執行環境,從而存在兩個以上不同版本的Array構造函數。如果你從一個框架向另一個框架傳入一個數組,那么傳入的數組與在第二個框架中原生創建的數組分別具有各自不同的構造函數。

        為了解決這個問題,ECMAScript5新增了Array.isArray( )方法。這個方法的目的是最終確定某個值到底是不是數組,而不管它是在哪個全局執行環境中創建的,

        支持該方法的瀏覽器有IE9+、Firefox 4+、Safari 5+、Opera 10.5+和Chrome。

        2.2 轉換方法

        調用數組的toString( )方法會返回由數組中每個值的字符串形式拼接而成的一個以逗號分隔的字符串。而調用valueOf( )返回的還是數組。實際上,為了創建這個字符串會調用數組每一項的toString( )方法。例如,

        另外,toLocaleString( )方法經常也會返回與toString( )和valueOf( )方法相同的值,但也不總是如此。當調用數組的toLocaleString( )方法時,它也會創建一個數組值的以逗號分隔的字符串。而與前兩個方法唯一的不同之處在于,這一次為了取得每一項的值,調用的是每一項的toLocaleString( )方法,而不是toString( )方法。

        輸出數組,并可指定分隔符,默認為逗號: var colors=["red","blue","green"]; alert(colors.join(",")); //red,blue,green alert(colors.join("||")); //red||blue||green

        2.3 棧方法(LIFO)

        push( ):接受任意數量的參數,把它們逐個添加到數組末尾,并返回修改后數組的長度;
        pop( ):從數組末尾移除最后一項

        2.4 隊列方法(FIFO)

        shift( ):移除數組的第一項并返回該項,同時數組長度減1;
        unshift( ):顧名思義,與shift( )用途相反,能在數組前端添加任意個項并返回數組的長度。

        2.5 重排序方法

        reverse( ):反轉數組項的順序;

        sort( ):默認按升序排列;為了實現排序,sort( )方法會調用每項的toString( )方法,然后比較得到的字符串,以確定如何排序。即使每一項都是數值,比較的也是字符串,如下所示。

        這種排序方式在很多情況下都不是最佳方案。因此sort( )方法可以接受一個比較函數作為參數,以便指定哪個值位于哪個值的前面。

        這個比較函數可以適用大多數據類型,只要將其作為參數傳遞給sort( )方法即可,如下,


        2.6 操作方法

        concat( ):基于當前數組中的所有項創建一個新數組。例如,

        slice( ):基于當前數組中的一個或多個項創建一個新數組。例如,

        splice( ):這個方法恐怕是最強大的數組方法了,主要用途是向數組的中部插入項,但使用這種方法的方式則有如下2種。

        刪除:可以刪除任意數量的項,只需指定2個參數:要刪除的第一項的位置和要刪除的項數。

        插入:可以向指定位置插入任意數量的項,只需提供3個參數:起始位置、0(要刪除的項數)和要插入的項。如果要插入多個項,可以再傳第四、第五以至任意多個項;例如,splice(2,0,"red","green")會從當前數組的位置2開始插入字符串"red"和"green"。

        splice( )方法始終都會返回一個數組,包含從原始數組中刪除的項(如果沒有刪除任何項,則返回空數組)。

        2.7 位置方法

        indexOf( )和lastIndexOf( ):這兩個方法都接受兩個參數:要查找的項和(可選的)表示查找起點位置的索引。前者從開頭開始向后查找,后者從末尾向前查找

        2.8 迭代方法

        ECMAScript5為數組定義了5個迭代方法,每個方法都接受兩個參數:要在每一項上運行的函數和(可選的)運行該函數的作用域對象——影響this的值。傳入這些方法中的函數會接收三個參數:數組項的值、該項在數組中的位置和數組對象本身。

        every( ):對數組中的每一項運行給定函數,如果該函數對每一項都返回true,則返回true。
        filter( ):對數組中的每一項運行給定函數,返回該函數會返回true的項組成的數組。
        forEach( ):對數組中的每一項運行給定函數,這個方法無返回值。
        map( ):對數組中的每一項運行給定函數,返回每次函數調用的結果組成的數組。
        some( ):對數組中的每一項運行給定函數,如果該函數對任一項返回true,則返回true。

        以上方法都不會修改數組中包含的值。例如,

        2.9 歸并方法

        reduce( ):從數組的第一項開始,逐個遍歷到最后;
        reduceRight( ):從數組的最后一項開始,向前遍歷到第一項。
        這兩個方法都接受兩個參數:一個在每一項上調用的函數和(可選的)作為歸并基礎的初始值。傳給這些方法的函數接受4個參數:前一個值、當前值、項的索引和數組對象。這個函數返回的任何值都會作為第一個參數傳給下一項。例如,

        聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

        文檔

        《JavaScript高級編程》學習筆記之object和array引用類型_javascript技巧

        《JavaScript高級編程》學習筆記之object和array引用類型_javascript技巧:本文給大家分享我的javascript高級編程學習筆記之object和array引用類型,涉及到javascript引用類型相關知識,大家一起看看把。 1. Object類型 大多數引用類型值都是Object類型的實例;而且Object也是ECMAScript中使用最多的一個類型。 創建
        推薦度:
        • 熱門焦點

        最新推薦

        猜你喜歡

        熱門推薦

        專題
        Top
        主站蜘蛛池模板: 国产精品视频免费观看| 国产高清对白在线观看免费91| 91精品全国免费观看含羞草 | 亚洲乱码一二三四五六区| 99热在线观看免费| 中文字幕亚洲综合久久2| 精品成在人线AV无码免费看| 亚洲国产一区在线观看| 成年人视频在线观看免费| 亚洲中文字幕无码mv| 国产成人免费全部网站 | 久久国产精品亚洲一区二区| 日本免费一区二区三区四区五六区| 亚洲综合视频在线| 无码国产精品一区二区免费虚拟VR | 无码久久精品国产亚洲Av影片| 日韩午夜理论免费TV影院| 亚洲AV无码一区二区三区在线| 全免费一级午夜毛片| 免费人人潮人人爽一区二区| 亚洲精品午夜无码专区| 99久9在线|免费| 亚洲男人的天堂网站| 亚洲一区二区精品视频| 日本不卡免费新一区二区三区| 亚洲综合激情视频| 免费无码又爽又刺激高潮的视频| 老司机精品视频免费| 亚洲欧洲免费视频| 精品国产免费一区二区| 精品一区二区三区高清免费观看| 亚洲欧洲日韩不卡| 国产成人高清精品免费鸭子| 青青操视频在线免费观看| 精品亚洲AV无码一区二区| 亚洲Av无码乱码在线观看性色| 久久精品一区二区免费看| 中文字幕乱码亚洲无线三区| 中文字幕亚洲激情| 日韩精品无码区免费专区| 一级毛片a女人刺激视频免费|