jurassic
v3.0
Jurassic é uma implementação da linguagem e tempo de execução ECMAScript. Seu objetivo é fornecer a implementação de JavaScript para .NET com melhor desempenho e maior conformidade com os padrões. Jurassic não se destina a usuários finais; em vez disso, pretende-se que seja integrado em programas .NET. Se você for o autor de um programa .NET, poderá usar Jurassic para compilar e executar código JavaScript.
Instale o pacote NuGet.
Consulte o wiki para obter detalhes completos de uso.
O suporte para ECMAScript 6 está em andamento. Consulte http://kangax.github.io/compat-table/es6/ para a definição de cada recurso. A tabela abaixo está correta na versão 3.1.
Recurso | Status |
---|---|
Otimização | |
chamadas finais adequadas (otimização da chamada final) | |
Sintaxe | |
parâmetros de função padrão | 07/04 |
parâmetros de descanso | |
sintaxe de propagação para objetos iteráveis | |
extensões literais de objeto | ✅ 6/6 |
para..de loops | 6/9 |
literais octais e binários | ✅ 4/4 |
literais de modelo | 6/7 |
Sinalizadores RegExp "y" e "u" | |
desestruturação, declarações | |
desestruturação, atribuição | |
desestruturação, parâmetros | |
Escapes de ponto de código Unicode | ✅ 4/4 |
novo.target | ✅ 2/2 |
Ligações | |
const | ✅ 18/18 |
deixar | 14/16 |
declaração de função em nível de bloco[18] | |
Funções | |
funções de seta | |
aula | ✅ 24/24 |
super | ✅ 8/8 |
geradores | |
Integrados | |
matrizes digitadas | 45/46 |
Mapa | 18/19 |
Definir | 18/19 |
Mapa Fraco | 11/12 |
Conjunto Fraco | 11/10 |
Procuração [25] | 33/34 |
Refletir [26] | 18/20 |
Promessa | 4/8 |
Símbolo | ✅ 12/12 |
símbolos bem conhecidos | 23/26 |
Extensões integradas | |
Métodos estáticos de objeto | ✅ 4/4 |
função "nome" propriedade | 17/10 |
Métodos estáticos de string | ✅ 2/2 |
Métodos String.prototype | ✅ 10/10 |
Propriedades RegExp.prototype | ✅ 6/6 |
Métodos estáticos de matriz | 11/08 |
Métodos array.prototype | ✅ 10/10 |
Propriedades numéricas | ✅ 9/9 |
Métodos matemáticos | ✅ 17/17 |
Data.protótipo[Symbol.toPrimitive] | ✅ 1/1 |
Subclassificação | |
Array é subclassável | 11/09 |
RegExp é subclassável | ✅ 4/4 |
A função é subclassável | 4/6 |
Promessa é subclassável | |
subclassáveis diversos | |
Diversos | |
protótipo de funções vinculadas | 1/5 |
Proxy, chamadas internas 'get' | 19/36 |
Proxy, chamadas internas 'definidas' | 11/07 |
Proxy, chamadas internas 'defineProperty' | |
Proxy, chamadas internas 'deleteProperty' | |
Proxy, chamadas internas 'getOwnPropertyDescriptor' | 2/4 |
Proxy, chamadas internas de 'ownKeys' | ✅ 3/3 |
Métodos estáticos de objeto aceitam primitivos | ✅ 10/10 |
ordem de propriedade própria | 5/7 |
Sintaxe do identificador atualizada | 1/3 |
variado | 09/08 |
Anexo b | |
semântica de função não estrita[35] | 2/3 |
__proto__ em objetos literais [36] | |
Objeto.protótipo.__proto__ | 1/6 |
Métodos HTML String.prototype | ✅ 3/3 |
RegExp.prototype.compile | 1/2 |
Extensões de sintaxe RegExp | 4/8 |
Comentários em estilo HTML |