JS高级程序设计第五章读书笔记
生活随笔
收集整理的這篇文章主要介紹了
JS高级程序设计第五章读书笔记
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
1.引用類型的值(對象)是引用類型的一個實例。在ES中,引用類型是一種數據結構,用于將數據和功能組織在一起。它們也長被稱為類,但這并不妥當。因為ES在技術層面上是一門面對對象的語言,但它并不具備傳統的面向對象的語言所支持的了和接口等基本結構,引用類型有時候也被稱為對象定義,因為他們描述的是一類對象所具有的屬性和方法。 2.創建object實例的方式有兩種,第一種是使用new操作符后跟object構造函數。另一種方式是使用對象字面兩表示法。 3.ES數組除了與其他編程語言一樣都是數據的有序列表外,不同的是,ES數組的而每一項都可以保存任何類型的數據。 4.創建數組的基本方式有兩種。一種是Array構造函數。另一種則是使用數組字面量表示法。與對象的構建方法相同的是,在使用數組字面量表示法時,也不會調用Array構造函數。 5.instanceof操作符能解決某個對象是不是數組的問題,但如果一個網頁存在多個框架,則會存在多個全局執行環境,就會有多個Array構造函數,如果一個數組從一個框架傳向另一個框架,那么傳入的數組與在第二個框架中原生創建的數組便具有了不同的構造函數。而ES5新增了Array.isArray()方法。這個方法可以無視在那個全局環境創建的,而得出是不是數組。 6.調用數組的tostring()會返回有數組中每個值的字符串形式拼接而成的一個以逗號分隔的字符串。 7.在調用toLocaleString()方法時,他會創建一個數組值的一逗號分隔的字符串。 8.ES數組也提供了push()和pop()方法,以便實現類似與棧的行為(后進先出)。push()方法可以接受任意數量的參數,把他們添加到數組的末尾,并返回修改后數組的長度。而pop()方法,則會從數組末尾一處最后一項,減少數組的length值,然后返回移除的項。 9.數組還有shift()方法,它能夠移除數組中的第一個項并返回該項。同時數組長度減1。 10.數組中已經存在兩個可以直接用來重排序的方法:reverse()和sort()。其中reverse()方法會對方磚數組項的順序。而sort()則默認按升序排列數組項,但sort()也會可以接受一個比較函數作為參數,以便我們指定那個值位于那個值得后面。 11.數組的concat方法可以基于當前數組中的所有項創建一個新數組。slice()則能夠用基于當前數組的一過多個項創建一個新數組。 12.數組中的solice方法時最強大的數組方法。可以刪除,插入,替換。其主要用途是想數組的中部插入項。 16.ES5為數組是咧添加了兩個位置方法:indexOf()和lastIndexOf().這兩個方法都接收兩個參數:要查找的項和表示查找起點位置的索引。只不過前者在數組的開頭找,后者在數組的末尾找。 17.ES5為數組定義了5個迭代方法。每個方法都接受兩個參數:要在每一項上運行的函數與和(可選的)運行該函數的作用域對象——影響this的值。傳入這些方法的函數會接收三個參數:數組項的值,該項在數組中的位置和數組對象本身。這五個迭代方法分別是:every();filter();foeEach();map();some()。 18.ES5海新增了兩個縮小數組的方法:reduce()和reduceRight().這兩個方法都會迭代數組的所有想,然后構建一個最終返回的值。兩個方法都接受兩個參數:一個在每一項上調用的函數和(可選)作為縮小基礎的初始值。傳給reduce()和reduceRight()的函數接受4個參數:前一個值,當前值,項的索引和數組對象。兩個方法作用相同,但方向相反。 19.ES通過RegExp類型支持正則表達式。正則表達式的匹配模式支持下列3個標志: g:表示全局模式,即模式將被應用于所有的字符串。而非在發現第一個匹配項立即停止。 i:表示不區分大小寫模式,即在確定匹配項時忽略模式與字符串的大小寫; m:表示多行模式,即在到達一行文本末尾是還會繼續查找下一行中是佛存在與模式匹配的項。 一個正則表達式就是一個模式和上述三個表示的組合體。不同的組合則會產生不同的結果。 20.RegRxp的每個是咧都會具有以下屬性,通過這些屬性可以取得有關模式的各種信息。 global:布爾值,表示是否設置了g標志。 ignoreCase:布爾值,表示是否設置了i標志。 lastIndex:整數,表示開始搜索下一個匹配項的字符位置,從0算起。 multiline:布爾值,表示是否設置m標志。 source:正則表達式的字符串表示。按照字面量形式傳入構造函數中的字符串模式返回。 21.RegExp對象的主要方法是exec(),該方法是專門為捕獲組而設計的。 22.由于函數是對象,英雌函數名實際上也是一個指向函數對象的指正,不會與某個函數綁定。又因為ES中的函數名本省是對象,所以函數也可以作為值來使用。 23.在函數內部,有兩個特殊的對象:arguements和this。arguements是一個類數組對象,包含著傳入函數中的所有參數。該對象還有一個叫callee的屬性,是一個指針,可以返回正在執行的Functon對象。指向擁有argument對象的函數。this引用的是函數據以執行的環境對象。 24.ES中函數是對象,因此函數也有屬性和方法。每個函數都包括兩個屬性:length和prototype.其中length屬性表示函數希望接受的命名參數的個數。而在ES核心所定義的全部屬性中,prototype最耐人尋味了。,對于ES中的引用類型而言,prototype是保存他們所有實例方法的真正所在。且該屬性不能被枚舉。 25.ECMA-262定義了兩個單體內置對象Global和Math. 26.Global是全局對象。包含了URI編碼方法和eval_r()方法。eval_r()是ES語言最強大的一個方法。只接受一個參數,即要執行的字符串。
轉載于:https://www.cnblogs.com/srtain/p/6505216.html
總結
以上是生活随笔為你收集整理的JS高级程序设计第五章读书笔记的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 求宁夏歌词!
- 下一篇: 《秋槿》是谁的作品?