在程式設計師群體中,存在著好多種鄙視鏈,其中一種鄙視鏈就是語言鄙視鏈了,大多數後端程式設計師都比較小瞧javascript這門語言了,但我個人認為即便如此,也不影響javascript的偉大,js作為一門前端語言,除了不能連接資料庫之外,有好多別致的語法,比如說js中的閉包,雖然被大多數人吐糟,但是在某些應用場景中也是特別的實用,另外關於異步請求,延時執行等函數的設計都是比較實用,其中有些語法感覺更是美妙,比如js中的promise,我個人感覺這不只是簡單的一個語法,他蘊含了一種偉大的思想,它能巧妙的解決一些場景中的問題。
作為前端語言,不要求性能如何之高,但是能夠做出讓用戶有種流暢的體驗還是非常有必要的,說起體驗流暢,好多人首先想到的就是異步執行,因為代碼的異步執行起碼能保證程序不會出現阻塞,卡到什麼地方,從而影響後面的程序進一步執行,這個異步思想固然很好,從某種程度上看似解決了這一個問題,但是異步的同時就不免會帶來一個問題,打亂了順序,有的時候我們的業務要求先做了A事情再做B事情,或者說根據A事情的結果決定做B事情還是C事情,這樣的話,單純的異步就無法很好的解決這一場景的情況,這種情況下promise便能很好的派上用場,因此我說它是一種偉大的思想,當然它的語法也比較簡單,大家網上搜搜就很快會了解,接下來,關於promise讓我們看看其他網友們有什麼看法吧!
網友一:promise 和 async await 連擊是不是更爽?
上世是朵花:這名網友該不會是經常涉足h5遊戲領域吧。
網友二:上次面一家公司 第一題讓十行代碼內手寫promise 當場去世
上世是朵花:還行吧,會者不難,難著不會,語法沒什麼,就那幾個關鍵詞,更重要的是想了解一下對這個思想的掌握與運用。
網友三:連promise都不能寫出來有點危險咯
上世是朵花:也沒這麼誇張吧,有的人可能沒聽說過,不過只要一提還是能很快了解並運用的。
網友四:我最近在了解d3,感覺二維圖像比三維應用範圍廣吧
上世是朵花:某前來看應該是這樣吧,感覺js這門語言的地位以後會加速提升的感覺。
網友五:那挺好的,也要多關注canvas相關的哦
上世是朵花:如今h5遊戲領域還真是離不開canvas啊。
網友六:嗯,複雜的應用確實沒寫過,不過最近已經加固了,之前的面試題也都自己寫出來了
上世是朵花:關於js方面的問題,有的不一定需要有經驗,只要了解透徹理論相似面試的時候也可以輕鬆應對,個人的一種模糊感覺認為是這樣。
關於js中的promise,我一直強調是一種思想,而非僅僅是一種語法,是因為我感覺這麼一個設計很是實用,解決了相當一部分場景下的問題,在計算機語言中我們經常會遇到一些可有可無的語法糖,只是增加了語言的豐富性,並沒有多大的實際用處,而promise的這種設計就不是這樣,不但非常實用,還會讓人感嘆這種設計中充斥著一種智慧。關於promise的語法這裡就沒必要多提了,只要是一個程式設計師,想必只要搜一下看看,很快就能掌握其中的精髓並能靈活運用了,最後,雖然今天提到的是js的內容,但重點不在js,而是promise的這種思想,既然是思想層面那麼就不局限於是什麼語言了,大家不妨也多琢磨一下這種思想,看看是不是在自己所學的語言中也能有類似的應用。
以上所有圖片均來之網際網路
大家好,我是「上世是朵花」。如果你有什麼好的看法或者觀點可以在評論區展現你的才華,互動交流,如果想進一步了解我,那就關注我吧!