這篇文章帶給大家的內容是關於laravel中validator的使用方法介紹(程式碼範例),有一定的參考價值,有需要的朋友可以參考一下,希望對你有幫助。
其實前幾章我都不知道怎麼寫,因為他們總是牽涉到一些比較深的東西,像是可迭代物件
、生成器
、迭代器
之類的東西,等寫完這個系列,再好好整理一下這些東西可能會好一點,現在整理到哪裡就寫到哪裡吧
function* name([param[, param[, ... param]]]) { statements }
使用function*作為宣告標識符,表示這是一個生成器函數
name是函數名
##param是參數名,可以255個statements是函數體特點生成器函數在執行的時候是可以暫停的,需要的時候再繼續執行生成器函數傳回的是一個迭代器對象,不會立即執行生成器函數可以使用return,但是return之後將不可再迭代栗子-無限id增長器function* idMaker(begin=0){ while(true) yield begin++; } let maker=idMaker(0) console.log(maker.next().value) // 0 console.log(maker.next().value) // 1 console.log(maker.next().value) // 2 console.log(maker.next().value) // 3 ...
增長器
function* idMaker(begin=0){ while(begin<3) yield begin++; } let maker=idMaker(0) console.log(maker.next()) // {value: 0, done: false} console.log(maker.next()) // {value: 1, done: false} console.log(maker.next()) // {value: 2, done: false} console.log(maker.next()) // {value: undefined, done: true}
function *createIterator() { let first = yield 1; let second = yield first + 2; // 4 + 2 // first =4 是next(4)将参数赋给上一条的 yield second + 3; // 5 + 3 } let iterator = createIterator(); console.log(iterator.next()); // "{ value: 1, done: false }" console.log(iterator.next(4)); // "{ value: 6, done: false }" console.log(iterator.next(5)); // "{ value: 8, done: false }" console.log(iterator.next()); // "{ value: undefined, done: true }"
function* yieldAndReturn() { yield "1"; return "2"; yield "3"; } var gen = yieldAndReturn() console.log(gen.next()); // { value: "1", done: false } console.log(gen.next()); // { value: "2", done: true } console.log(gen.next()); // { value: undefined, done: true }
以上是ES6中生成器函數的講解(程式碼範例)的詳細內容。更多資訊請關注PHP中文網其他相關文章!