| Feature | Type | TC39 | CoreJS | Babel | Civet |
| Joint iteration | Polyfill | ✅ Stage 3 | ✅ | ❌ | ❌ |
| Source phase imports | Runtime | ✅ Stage 3 | | ✅ | ❌ |
| Async iterator helpers | Polyfill | ✅ Stage 2 | ✅ | | |
| Extractors | Syntax | ✅ Stage 2 | ✅ | | |
| Function sent | Syntax | ✅ Stage 2 | | ✅ | |
| Iterator range (range) | Polyfill | ✅ Stage 2 | ✅ | | |
| Module declarations (module blocks) | Syntax | ✅ Stage 2 | | ✅ | |
| Reflect.isTemplateObject | Polyfill | ✅ Stage 2 | ✅ | | |
| String dedent | Runtime | ✅ Stage 2 | ✅ | | ✅ |
| Symbol predicates | Polyfill | ✅ Stage 2 | ✅ | | |
| {BigInt,Number}.fromString | Polyfill | ✅ Stage 1 | ✅ | | |
| Array filtering | Polyfill | ✅ Stage 1 | ✅ | | |
| Array.prototype.unique() | Polyfill | ✅ Stage 1 | ✅ | | |
| Collection methods | Polyfill | ✅ Stage 1 | ✅ | | |
| Collections of/from | Polyfill | ✅ Stage 1 | ✅ | | |
| Compare strings by codepoint | Runtime | ✅ Stage 1 | ✅ | | |
| DataView get/set Uint8Clamped methods | | ✅ Stage 1 | ✅ | | |
| Observable | Polyfill | ✅ Stage 1 | ✅ | | |
| Partial application | Syntax | ✅ Stage 1 | | ✅ | |
| Pattern matching (match) | Syntax | ✅ Stage 1 | ✅ | | ✅ |
| Richer Keys (compositeKey, compositeSymbol) | Polyfill | ✅ Stage 1 | ✅ | | |
| String.cooked | Polyfill | ✅ Stage 1 | ✅ | | |
| Function bind syntax (::) | Syntax | ✅ Stage 0 | | ✅ | |
| Function.prototype.demethodize | Polyfill | ✅ Stage 0 | ✅ | | |
| Reflect.{isCallable,isConstructor} | Polyfill | ✅ Stage 0 | ✅ | | |
| Rest everywhere | Syntax | ❌ | | ❌ | ✅ |