jurassic
v3.0
Jurassic 是 ECMAScript 語言和運行時的實作。它旨在為 .NET 提供性能最佳且最符合標準的 JavaScript 實作。 Jurassic 不適合最終用戶;相反,它旨在整合到 .NET 程式中。如果您是 .NET 程式的作者,則可以使用 Jurassic 來編譯和執行 JavaScript 程式碼。
安裝 NuGet 套件。
有關完整的使用詳細信息,請參閱 wiki。
對 ECMAScript 6 的支援正在進行中。有關每個功能的定義,請參閱 http://kangax.github.io/compat-table/es6/。下表從版本 3.1 開始是正確的。
特徵 | 地位 |
---|---|
最佳化 | |
適當的尾部調用(尾部調用優化) | |
句法 | |
預設函數參數 | 4/7 |
其餘參數 | |
可迭代物件的擴展語法 | |
物件字面量擴展 | ✅ 6/6 |
for..of 循環 | 6/9 |
八進制和二進位文字 | ✅ 4/4 |
範本文字 | 6/7 |
正規表示式“y”和“u”標誌 | |
解構、聲明 | |
解構、賦值 | |
解構、參數 | |
Unicode 代碼點轉義 | ✅ 4/4 |
新目標 | ✅2/2 |
綁定 | |
常量 | ✅ 18/18 |
讓 | 14/16 |
區塊級函數聲明[18] | |
功能 | |
箭頭函數 | |
班級 | ✅24/24 |
極佳的 | ✅8/8 |
發電機 | |
內建 | |
類型數組 | 45/46 |
地圖 | 18/19 |
放 | 18/19 |
弱映射 | 11/12 |
弱集 | 10/11 |
代理[25] | 33/34 |
反映[26] | 18/20 |
承諾 | 4/8 |
象徵 | ✅ 12/12 |
著名符號[27] | 23/26 |
內建擴充 | |
物件靜態方法 | ✅ 4/4 |
函數“名稱”屬性 | 10/17 |
字串靜態方法 | ✅2/2 |
String.prototype 方法 | ✅ 10/10 |
RegExp.prototype 屬性 | ✅ 6/6 |
數組靜態方法 | 8/11 |
Array.prototype 方法 | ✅ 10/10 |
數字屬性 | ✅9/9 |
數學方法 | ✅ 17/17 |
日期.原型[Symbol.toPrimitive] | ✅ 1/1 |
子類化 | |
數組是可子類化的 | 9/11 |
RegExp 是可子類化的 | ✅ 4/4 |
函數是可子類化的 | 4/6 |
Promise 是可子類化的 | |
雜項子類 | |
雜項 | |
綁定函數的原型 | 1/5 |
代理,內部“獲取”調用 | 19/36 |
代理、內部「設定」調用 | 7/11 |
代理,內部“defineProperty”調用 | |
代理,內部“deleteProperty”調用 | |
代理,內部“getOwnPropertyDescriptor”調用 | 2/4 |
代理,內部“ownKeys”調用 | ✅3/3 |
物件靜態方法接受基元 | ✅ 10/10 |
自有財產令 | 5/7 |
更新了標識符語法 | 1/3 |
各種各樣的 | 8/9 |
附件b | |
非嚴格函數語意[35] | 2/3 |
物件字面量中的 __proto__ [36] | |
物件.prototype.__proto__ | 1/6 |
String.prototype HTML 方法 | ✅3/3 |
RegExp.prototype.compile | 1/2 |
正規表示式語法擴展 | 4/8 |
HTML 風格的評論 |