小程式的主要開發語言是 JavaScript ,小程式的開發同普通的網頁開發相比有很大的相似性。對於前端開發者而言,從網頁開發遷移到小程式的開發成本並不高,但二者還是有些許區別的。
網頁開發渲染執行緒和腳本執行緒是互斥的,這也是為什麼長時間的腳本運行可能會導致頁面失去回應;而在小程式中,二者是分開的,分別運行在不同的線程中。網頁開發者可以使用到各種瀏覽器暴露出來的 DOM API,進行 DOM 選取和操作。
小程式的邏輯層和渲染層是分開的,邏輯層運行在 JSCore 中,並沒有一個完整瀏覽器對象,因而缺少相關的DOM API和BOM API。這一區別導致了前端開發非常熟悉的一些函式庫,例如 jQuery、 Zepto 等,在小程式中是無法運作的。同時 JSCore 的環境同 NodeJS 環境也是不盡相同,所以有些 NPM 的套件在小程式中也是無法運作的。
網頁開發者需要面對的環境是各式各樣的瀏覽器,PC 端需要面對IE、Chrome、QQ瀏覽器等,在行動端需要面對Safari、Chrome以及iOS、Android系統中的各式WebView 。而小程式開發過程中需要面對的是兩大作業系統iOS 和Android 的微信客戶端,以及用於輔助開發的小程式開發者工具,小程式中三大運行環境也是有所區別的,如表1 所示。
表1 小程式的運行環境
運行環境 | 邏輯層 | 渲染層 |
---|---|---|
iOS | JavaScriptCore | #WKWebView |
安卓 | V8 | chromium自訂核心 |
小程式開發者工具 | NWJS | Chrome WebView |
#推薦教學:《微信小程式》
#以上是小程式與普通網頁開發之間的差異是什麼的詳細內容。更多資訊請關注PHP中文網其他相關文章!