2025-07-27
2 min read

[FE] How to detect ES Features

若用戶停留在舊版版的遊覽器就無法支持新特徵,如何偵測遊覽器上支援哪些JavaScript特徵,遊覽器依據 ECMAScript 規範實作這些特徵。

檢查方式不外乎透過 in 關鍵字來檢查或實際宣告並執行該特徵,並透過 new Function() 的方式來執行並用 try catch包裹,看看執行後是否發生錯誤,但如果遇到html header設置的Content Security-Policy較為嚴謹的話,執行evalnew Function(),均會返回 EvalError 錯誤,就無法做任何檢查.
此專案沒有全盤地將所有特徵加入,僅加入比較有可能使用的特徵.

網路上找到了相關資源,但作者只檢查了ES2015,自己花了點時間擴充至2025 ,並可自行設置必需的特徵,以及畫面是否顯示錯誤提示.

Repository

專案網址

Reference