Icon | Meaning |
---|---|
✅ | Implemented |
🔲 | Planned |
〰️ | Deprioritized - open an issue if you want this. |
❌ | Will not be implemented - nonstandard or deprecated API |
⬇️ | Will not be implemented - nonidiomatic TS or could cause performance issues |
Progress | Feature | Notes |
---|---|---|
〰️ | arguments | I can do this, but does anyone want it? |
🔲 | async | Oh boy |
✅ | break | Still need to do labelled breaks |
🔲 | case | |
〰️ | catch | See exception handling section below |
🔲 | class | See class section below |
✅ | const | |
✅ | continue | Still need to do labelled continues |
〰️ | debugger | Hah! One day... one day... |
🔲 | default | |
〰️ | delete | not sure if I want to support this for arrays |
🔲 | do | |
✅ | else | |
🔲 | export | |
🔲 | extends | See class section below |
🔲 | finally | See exception handling section below |
✅ | for | |
✅ | function | See function section below |
✅ | if | |
🔲 | import | |
〰️ | in | will not support for...in, except maybe on objects. |
🔲 | instanceof | |
🔲 | new | |
✅ | return | |
🔲 | super | |
🔲 | switch | |
✅ | this | |
〰️ | throw | |
〰️ | try | |
🔲 | typeof | |
❌ | var | Use let or const |
〰️ | void | seems unnecessary, but not hard to add |
🔲 | while | |
❌ | with | Will definitely never add this. |
🔲 | yield | Oh boy. |
Progress | Feature | Notes |
---|---|---|
🔲 | Implementation | Got some basic stuff in place, but there's still a lot of details to be worked out. |
🔲 | Constructors | |
🔲 | instanceof checks | |
🔲 | Properties | |
🔲 | Methods | |
🔲 | super | |
🔲 | Static Methods | |
🔲 | Static Properties | |
🔲 | Private modifier | There isn't much to do here since TS will enforce this. |
🔲 | Getters / Setters | |
🔲 | Inheritance | Oh boy |
Progress | Feature | Notes |
---|---|---|
✅ | Function declarations | |
✅ | Method declarations | |
✅ | Arrow functions | |
〰️ | Function expressions | Use arrow functions - it's difficult to ensure this is typed correctly. |
✅ | Arrow functions | |
🔲 | Closures | |
🔲 | Default arguments | |
🔲 | Optional arguments | |
⬇️ | Function.prototype.apply | Might be possible, need to investigate (https://github.com/Microsoft/TypeScript/pull/27028)[this PR] |
⬇️ | Function.prototype.bind | Might be possible, need to investigate (https://github.com/Microsoft/TypeScript/pull/27028)[this PR] |
⬇️ | Function.prototype.call | Might be possible, need to investigate (https://github.com/Microsoft/TypeScript/pull/27028)[this PR] |
Progress | Feature | Notes |
---|---|---|
🔲 | Rudimentary module loading and bundling | |
✅ | Import function declarations | |
✅ | Import class declarations | there are no real classes yet but i'm prepared |
🔲 | Absolute paths | |
🔲 | Relative paths |
Progress | Feature | Notes |
---|---|---|
✅ | String literals | |
✅ | String equality with === |
|
🔲 | Concatenate strings with + |
|
✅ | String.fromCharCode() | |
〰️ | String.fromCodePoint() | |
❌ | String.prototype.anchor() | deprecated API |
❌ | String.prototype.big() | deprecated API |
❌ | String.prototype.blink() | deprecated API |
❌ | String.prototype.bold() | deprecated API |
✅ | String.prototype.charAt() | |
✅ | String.prototype.charCodeAt() | |
〰️ | String.prototype.codePointAt() | |
✅ | String.prototype.concat() | need to handle varags |
✅ | String.prototype.endsWith() | |
❌ | String.prototype.fixed() | deprecated API |
❌ | String.prototype.fontcolor() | deprecated API |
❌ | String.prototype.fontsize() | deprecated API |
✅ | String.prototype.includes() | |
✅ | String.prototype.indexOf() | |
❌ | String.prototype.italics() | deprecated API |
✅ | String.prototype.lastIndexOf() | |
❌ | String.prototype.link() | deprecated API |
〰️ | String.prototype.localeCompare() | |
〰️ | String.prototype.match() | |
〰️ | String.prototype.normalize() | |
🔲 | String.prototype.padEnd() | |
🔲 | String.prototype.padStart() | |
❌ | String.prototype.quote() | deprecated API |
✅ | String.prototype.repeat() | |
🔲 | String.prototype.replace() | |
🔲 | String.prototype.search() | |
🔲 | String.prototype.slice() | |
❌ | String.prototype.small() | deprecated API |
🔲 | String.prototype.split() | |
🔲 | String.prototype.startsWith() | |
❌ | String.prototype.strike() | deprecated API |
❌ | String.prototype.sub() | deprecated API |
❌ | String.prototype.substr() | deprecated API |
🔲 | String.prototype.substring() | |
❌ | String.prototype.sup() | deprecated API |
〰️ | String.prototype.toLocaleLowerCase() | |
〰️ | String.prototype.toLocaleUpperCase() | |
🔲 | String.prototype.toLowerCase() | |
〰️ | String.prototype.toSource() | |
🔲 | String.prototype.toString() | |
🔲 | String.prototype.toUpperCase() | |
🔲 | String.prototype.trim() | |
🔲 | String.prototype.trimEnd() | |
🔲 | String.prototype.trimStart() | |
🔲 | String.prototype.valueOf() | |
🔲 | String.prototype@@iterator | |
〰️ | String.raw() |
Properties
Progress | Feature | Notes |
---|---|---|
✅ | Array.length | |
⬇️ | Array.prototype | |
⬇️ | Array.prototype[@@unscopables] | We will not support with |
Methods
Progress | Feature | Notes |
---|---|---|
🔲 | Array.from() | |
🔲 | Array.isArray() | |
❌ | Array.observe() | deprecated API |
🔲 | Array.of() | |
✅ | Array.prototype.concat() | Needs var-arg support |
🔲 | Array.prototype.copyWithin() | |
🔲 | Array.prototype.entries() | |
🔲 | Array.prototype.every() | |
🔲 | Array.prototype.fill() | |
🔲 | Array.prototype.filter() | |
🔲 | Array.prototype.find() | |
🔲 | Array.prototype.findIndex() | |
🔲 | Array.prototype.flat() | |
🔲 | Array.prototype.flatMap() | |
🔲 | Array.prototype.forEach() | |
🔲 | Array.prototype.includes() | |
✅ | Array.prototype.indexOf() | |
🔲 | Array.prototype.join() | |
🔲 | Array.prototype.keys() | |
🔲 | Array.prototype.lastIndexOf() | |
✅ | Array.prototype.map() | needs to pass in index and current value |
🔲 | Array.prototype.pop() | |
✅ | Array.prototype.push() | |
🔲 | Array.prototype.reduce() | |
🔲 | Array.prototype.reduceRight() | |
✅ | Array.prototype.reverse() | |
🔲 | Array.prototype.shift() | |
🔲 | Array.prototype.slice() | |
🔲 | Array.prototype.some() | |
🔲 | Array.prototype.sort() | |
🔲 | Array.prototype.splice() | |
🔲 | Array.prototype.toLocaleString() | |
🔲 | Array.prototype.toSource() | |
🔲 | Array.prototype.toString() | |
🔲 | Array.prototype.unshift() | |
🔲 | Array.prototype.values() | |
🔲 | Array.prototype@@iterator | |
❌ | Array.unobserve() | deprecated API |
🔲 | get Array[@@species] |