在之前的公司里面用過(guò)dva,他們的框架都是封裝好的,第一次看代碼的時(shí)候,看到了函數(shù)名前面帶有*,一看就懵逼了,隨后查也沒(méi)查到是干啥的。之后看了ts之后才知道是generator創(chuàng)建懶迭代器用的(原諒灑家才疏學(xué)淺不學(xué)習(xí))。
現(xiàn)在來(lái)說(shuō)一個(gè)這個(gè)懶迭代器的功能(大神們就不用看了,純小白)。
1.generator對(duì)象只會(huì)在調(diào)用next的時(shí)候才會(huì)開(kāi)始運(yùn)行。
2.函數(shù)在執(zhí)行到y(tǒng)ield語(yǔ)句的時(shí)候會(huì)暫停并返回yield的值
3.函數(shù)在next被調(diào)用的時(shí)候才會(huì)繼續(xù)恢復(fù)執(zhí)行。
當(dāng)我知道這個(gè)功能這么牛逼的時(shí)候,真把我驚艷到了。
yield除了能把值給返回到外部,外部也一樣可以傳值到內(nèi)部進(jìn)行調(diào)用。

就是這樣。