這篇文章主要介紹如何使用js實(shí)現(xiàn)單鏈解決前端隊(duì)列問題,文中介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們一定要看完!
為巴馬等地區(qū)用戶提供了全套網(wǎng)頁(yè)設(shè)計(jì)制作服務(wù),及巴馬網(wǎng)站建設(shè)行業(yè)解決方案。主營(yíng)業(yè)務(wù)為成都網(wǎng)站制作、成都網(wǎng)站設(shè)計(jì)、巴馬網(wǎng)站設(shè)計(jì),以傳統(tǒng)方式定制建設(shè)網(wǎng)站,并提供域名空間備案等一條龍服務(wù),秉承以專業(yè)、用心的態(tài)度為用戶提供真誠(chéng)的服務(wù)。我們深信只要達(dá)到每一位用戶的要求,就會(huì)得到認(rèn)可,從而選擇與我們長(zhǎng)期合作。這樣,我們也可以走得更遠(yuǎn)!使用場(chǎng)景
比如前端需要處理什么隊(duì)列一類的業(yè)務(wù)
比如有人下單,需要彈出什么彈窗
首先先聲明一個(gè)類
接收一個(gè) 數(shù)組對(duì)象:items
class ChainQueue { constructor(items) { this.items = items || [] this.maxNum = 200 } }
為隊(duì)列添加數(shù)組隊(duì)列
// 添加數(shù)組隊(duì)列 entryArrQueue(node) { Array.isArray(node) node.map(item => this.items.push(item)) }
為當(dāng)前隊(duì)列添加單個(gè)對(duì)象
// 添加隊(duì)列 entryQueue(node) { if (this.items.length > this.maxNum) { return } if (Array.isArray(node)) { node.map(item => this.items.push(item)) } else { this.items.push(node) } }
刪除隊(duì)列,返回刪除的當(dāng)前的項(xiàng)目
deleteQueue(func = () => {}) { assert(isFunc(func), `${func} is not function`) func(this.items.shift()) }
返回隊(duì)列的第一個(gè)
front() { return this.items[0] }
清除隊(duì)列
clear() { this.items = [] }
所有代碼
const isFunc = v => typeof v === 'function' const assert = (condition, msg) => { if (!condition) throw new Error(`[dashboard]${msg}`) } class ChainQueue { constructor(items) { this.items = items || [] this.maxNum = 200 } // 添加數(shù)組隊(duì)列 entryArrQueue(node) { Array.isArray(node) node.map(item => this.items.push(item)) } // 添加隊(duì)列 entryQueue(node) { if (this.items.length > this.maxNum) { return } if (Array.isArray(node)) { node.map(item => this.items.push(item)) } else { this.items.push(node) } } // 刪除隊(duì)列,返回刪除的當(dāng)前的項(xiàng)目 deleteQueue(func = () => {}) { assert(isFunc(func), `${func} is not function`) func(this.items.shift()) } // 返回隊(duì)列的第一個(gè) front() { return this.items[0] } // 清除隊(duì)列 clear() { this.items = [] } get size() { return this.items.length } get isEmpty() { return !this.items.length } print() { console.log(this.items.toString()) console.log(this.items) } result() { return this.items } } module.exports = ChainQueue // export default ChainQueue // export default (ChainQueue = new ChainQueue())
以上是“如何使用js實(shí)現(xiàn)單鏈解決前端隊(duì)列問題”這篇文章的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對(duì)大家有幫助,更多相關(guān)知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)成都網(wǎng)站設(shè)計(jì)公司行業(yè)資訊頻道!
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國(guó)服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場(chǎng)景需求。
網(wǎng)站標(biāo)題:如何使用js實(shí)現(xiàn)單鏈解決前端隊(duì)列問題-創(chuàng)新互聯(lián)
URL鏈接:http://jinyejixie.com/article28/pgccp.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供做網(wǎng)站、外貿(mào)建站、服務(wù)器托管、靜態(tài)網(wǎng)站、建站公司、企業(yè)建站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容