内射老阿姨1区2区3区4区_久久精品人人做人人爽电影蜜月_久久国产精品亚洲77777_99精品又大又爽又粗少妇毛片

從引擎角度講,為什么瀏覽器只運行JS,不能原生擴展其他語言?

2023-11-05    分類: 網(wǎng)站建設

幾年前有一個類似的問題:從引擎的角度來看,為什么瀏覽器只運行JS,不能原生擴展其他語言? -

綜上所述,原因有很多。最重要的是,一個瀏覽器支持多語言(及其VM)并不劃算(這個觀點也被我記憶中的JS之父Eich解釋過)。引入一門新語言的好處一定要大到代價高昂,而且這樣的條件在歷史上是從來沒有過的,可以斷言以后也不會發(fā)生。 IE歷史上唯一能支持多語言的特例,是因為語言引擎不包含在瀏覽器中,而是包含在OS中,而不僅僅是服務于瀏覽器。

基于目前各大瀏覽器廠商(當然只能算是瀏覽器內核廠商,如果你是一堆就別想了),理論上微軟可以考慮直接在瀏覽器中支持,但實際上,目標是兼容 ES6+ 的一個超集。最好在其額外的特性進入ES標準后,直接作為js引擎的升級來支持。另外,我也考慮過加入Dart,但我放棄了。目前最接近多語言的是各大主流js引擎廠商共同開發(fā)的web,但它并不是新的語言和vm,而是現(xiàn)有js的擴展。

IE 壟斷時期可能是唯一可以開發(fā)多種語言的時期。但是vbs語言本身也有很多缺點,比如語言特性不如js靈活,是私有語言,不是標準。此外,混合編程存在錯誤處理等問題,垃圾回收機制的差異導致混合編程容易出現(xiàn)內存泄漏。這些都阻礙了vbs的普及或vbs/js的共存。關鍵是微軟并沒有通過大幅改善瀏覽器編程環(huán)境來大力推廣vbs,而是停止了幾年瀏覽器的開發(fā)。當 IE 壟斷期過去后,瀏覽器上將不再有第二語言取代 js。

附注。有一個答案又臭又長,所以很神秘,還包含了很多低級錯誤(比如vbs有安全問題而js沒有),我討厭這種嚴重浪費讀者心智的答案時間前端編程語言,我已經(jīng)反對了。加上沒有幫助。建議所有同意我答案的同學也提出反對意見和幫助,這個不好的答案盡快折疊。

【更新:回答不好答案的作者】你可能知道我強烈批評了某本JS書前端編程語言,最近我也強烈批評某本JS書的翻譯太爛了。如果這些書的作者和譯者跳出來說我很努力,你太天真了,讀者又不是傻子,你無權干涉,你覺得有道理嗎?

請注意,我已經(jīng)明確表示,我討厭這種糟糕的答案,而不是針對您個人。年輕的時候也寫過很多自以為是的技術文章(也許現(xiàn)在)。相反,對于那些爛書和爛譯本,我可能不僅僅針對書本身。我要直接詛咒出版商。你明白其中的區(qū)別嗎?

[更新] 為什么這個答案是一個糟糕的答案,請參考這個答案下的評論。

網(wǎng)站題目:從引擎角度講,為什么瀏覽器只運行JS,不能原生擴展其他語言?
文章地址:http://www.rwnh.cn/news32/292632.html

成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站設計、動態(tài)網(wǎng)站移動網(wǎng)站建設、App開發(fā)、自適應網(wǎng)站微信公眾號

廣告

聲明:本網(wǎng)站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經(jīng)允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)

微信小程序開發(fā)
乐至县| 上饶市| 班玛县| 宝清县| 靖宇县| 会宁县| 宽甸| 临颍县| 乐亭县| 黄大仙区| 涿鹿县| 大宁县| 龙山县| 固安县| 江口县| 双牌县| 富锦市| 涿鹿县| 丹阳市| 天水市| 博罗县| 青阳县| 襄樊市| 江门市| 绵阳市| 延安市| 禹州市| 横峰县| 景宁| 库尔勒市| 阿克| 寻甸| 平阳县| 临沂市| 静海县| 嘉善县| 克拉玛依市| 保德县| 冷水江市| 呈贡县| 托克逊县|