1. 程式人生 > >2017.05.06FreeCodeCamp編程之JS面向對象編程學習

2017.05.06FreeCodeCamp編程之JS面向對象編程學習

支持 concat lte red true 轉化 指向 -1 方法的參數

1.構造對象的方法:

技術分享

②使用構造函數來創建對象。構造函數 通常使用大寫字母開頭,以便把自己和其他普通函數區別開。

技術分享

在 構造函數 中, this 指向被此 構造函數 創建出來的 對象 。

2.使用構造函數的方法:使用構造函數時,我們通過在它前面使用 new關鍵字 來對它進行調用

技術分享

要使用 new 關鍵字 去調用構造函數。因為只有這樣,Javascript才知道這是要去構造一個新 對象 ,並且把構造函數中的 this 指向這個新對象。

現在,當 myCar (即 Car 的一個 實例 )創建後,他可以像普通對象一樣被使用,包括創建、訪問、修改它的屬性等,就像我們使用其他對象一樣。

技術分享

3.重點理解和掌握的知識點在這裏:我們之前寫的 構造函數 很好,但是我們不想總是創建相同的對象,怎麽辦呢?

為了解決這個問題,我們要向 構造函數 中添加 參數

技術分享

4.對象的私有屬性和私有方法:對象擁有自己的特征,稱為 屬性,對象還有自己的函數,稱為 方法

可以創建 私有屬性私有方法 ,它們兩個在對象外部是不可訪問的

我們在 構造函數 中,使用我們熟悉的 var 關鍵字去創建變量,來替代我們使用 this 創建 屬性

技術分享

5.叠代數組:map 方法可以方便的叠代數組

技術分享

map 方法會叠代數組中的每一個元素,並根據回調函數來處理每一個元素,最後返回一個新數組。

註意,這個方法不會改變原始數組。

在我們的例子中,回調函數只有一個參數,即數組中元素的值 (val 參數) ,

但其實,你的回調函數也可以支持多個參數,譬如:元素的索引index、原始數組arr

6.數組方法 reduce 用來叠代一個數組,並且把它累積到一個值中

使用 reduce 方法時,你要傳入一個回調函數,這個回調函數的參數是一個 累加器

reduce 方法有一個可選的第二參數,它可以被用來設置累加器的初始值。

如果沒有在這定義初始值,那麽初始值將變成數組中的第一項,而 currentVal 將從數組的第二項開始。

技術分享

使用 reduce 方法來讓 array 中的所有值相加,並且把結果賦值給 singleVal

7.數組條件過濾:filter 方法用來叠代一個數組,並且按給出的條件過濾出符合的元素。

filter 方法傳入一個回調函數,這個回調函數會攜帶一個參數,參數為當前叠代的項

回調函數返回 true 的項會保留在數組中,返回 false 的項會被過濾出數組

技術分享

8.數組排序:使用 sort 方法,你可以很容易的按字母順序或數字順序對數組中的元素進行排序。

與我們之前用的數組方法僅僅返回一個新數組不同, sort 方法將改變原數組,返回被排序後的數組

sort 可以把比較函數作為參數傳入。比較函數有返回值,當 a 小於 b,返回一個負數;當 a 大於 b ,返回一個正數;相等時返回0。

如果沒有傳入比較函數,它將把值全部轉成字符串,並按照字母順序進行排序。

技術分享

9.翻轉數組:可以使用 reverse 方法來翻轉數組。這個函數不需要,回調函數,直接使用。

newArray = array.reverse();

技術分享

10.合並數組:concat 方法可以用來把兩個數組的內容合並到一個數組中

concat 方法的參數應該是一個數組。參數中的數組會拼接在原數組的後面,並作為一個新數組返回。

技術分享

11.字符串分割為數組:使用 split 方法按指定分隔符將字符串分割為數組。

要給 split 方法傳遞一個參數,這個參數將會作為一個分隔符。

技術分享

返回:["Split","me","into","an","array"]

12.數組轉化為字符串:使用 join 方法來把數組轉換成字符串,裏面的每一個元素可以用你指定的連接符來連接起來,這個連接符就是你要傳入的參數。

技術分享

返回:

技術分享

2017.05.06FreeCodeCamp編程之JS面向對象編程學習