es6中 Map的用法 如何更優(yōu)雅的寫好JavaScript?
如何更優(yōu)雅的寫好JavaScript?今天翻了翻一年多前寫的代碼,感覺年輕的自己寫的代碼真的是一個(gè)模式(不過(guò)現(xiàn)在好不了多少)。最近看了很多關(guān)于函數(shù)式編程和設(shè)計(jì)模式的書籍和文章,想分享一些讓JS代碼更優(yōu)
如何更優(yōu)雅的寫好JavaScript?
今天翻了翻一年多前寫的代碼,感覺年輕的自己寫的代碼真的是一個(gè)模式(不過(guò)現(xiàn)在好不了多少)。最近看了很多關(guān)于函數(shù)式編程和設(shè)計(jì)模式的書籍和文章,想分享一些讓JS代碼更優(yōu)雅的小技巧。
1.善用函數(shù)式編程
2.lodash中一些有用的東西(LODASH是著名的JS工具庫(kù),里面包含了很多函數(shù)方法和接口。在項(xiàng)目中引入邏輯可以簡(jiǎn)化很多冗余的邏輯。)
web循環(huán)使用方法?
前端開發(fā)為我們提供了數(shù)組的概念。很多數(shù)據(jù)可以存儲(chǔ)在一個(gè)數(shù)組中,但是當(dāng)我們需要找到里面的數(shù)據(jù)時(shí),我們需要遍歷這個(gè)數(shù)組。那么遍歷數(shù)組的方法有哪些呢?
一.對(duì)于周期
長(zhǎng)度屬性是一個(gè)非常特殊的屬性??吹綌?shù)組,肯定會(huì)想到長(zhǎng)度。它有什么具體特征?
1.數(shù)組是一組數(shù)據(jù),length屬性表示該數(shù)組中內(nèi)容的數(shù)量。數(shù)組長(zhǎng)度的簡(jiǎn)稱。
2.數(shù)組對(duì)象沒(méi)有方法,只有唯一的屬性長(zhǎng)度。
3.當(dāng)設(shè)置了該屬性時(shí),意味著要修改數(shù)組的長(zhǎng)度。數(shù)組的長(zhǎng)度將會(huì)改變。
4.讀取時(shí),會(huì)實(shí)時(shí)返回?cái)?shù)組的當(dāng)前長(zhǎng)度。
For循環(huán)實(shí)現(xiàn)數(shù)組的遍歷
原則:
1.通過(guò)for構(gòu)造下標(biāo),并根據(jù)下標(biāo)取出特定元素。
2.(變量名。length)可以動(dòng)態(tài)檢測(cè)數(shù)組元素的個(gè)數(shù)。
[i]表示哪個(gè)數(shù)字,不是計(jì)數(shù)器,而是數(shù)組元素。
指示有幾個(gè),這是數(shù)組的長(zhǎng)度。
第二,外語(yǔ)
forEach()函數(shù)從頭到尾遍歷數(shù)組。有三個(gè)參數(shù):數(shù)組元素,元素的索引和數(shù)組本身(如果是參數(shù),就是數(shù)組元素,也就是數(shù)組的值。
輸出結(jié)果:
這表明:
表示數(shù)組中的值,key表示對(duì)應(yīng)數(shù)組的下標(biāo)。
2.方法用于調(diào)用數(shù)組的每個(gè)元素,并將元素傳遞給回調(diào)函數(shù),沒(méi)有返回值。
三、地圖()
Map方法是對(duì)原數(shù)組進(jìn)行逐項(xiàng)循環(huán)處理,返回一個(gè)新數(shù)組,同時(shí)不會(huì)改變?cè)瓟?shù)組的值。
輸出結(jié)果:
注意:
1.返回一個(gè)新數(shù)組,但不改變?cè)紨?shù)組。
該方法有一個(gè)返回值,它是通過(guò)變量接收的。
第四,遍歷數(shù)組的形成
Es6添加了一個(gè)新的for循環(huán)來(lái)獲取元素。
優(yōu)勢(shì):
與forEach方法不同,它可以與break、continue和return一起使用。
為遍歷所有數(shù)據(jù)結(jié)構(gòu)提供統(tǒng)一的操作接口。
注意:
的無(wú)法遍歷對(duì)象。