Microsoft/TypeScript
Ver no GitHub`.length` property of function literals is not `readonly`
Open
#49.113 aberto em 14 de mai. de 2022
BugDomain: lib.d.tsHelp Wanted
Métricas do repositório
- Stars
- (48.455 stars)
- Métricas de merge de PR
- (Mesclagem média 6d 17h) (9 fundiu PRs em 30d)
Description
Bug Report
Function .length property is inconsistently readonly depending on whether Function constructor is used or not.
🔎 Search Terms
function length readonly
🕗 Version & Regression Information
v4.6.2 (haven't checked older versions)
⏯ Playground Link
Playground link with relevant code
💻 Code
const f = new Function()
f.length = 1 // Error here: Cannot assign to 'length' because it is a read-only property.
const f2 = () => {}
f2.length = 1 // No error here
🙁 Actual behavior
The length property of the function created with new Function() is readonly while the length property of function literals is not.
🙂 Expected behavior
Both length properties should be readonly. Alternative both could be non-readonly but that seems worse since JS doesn't modify the length when assigning a value.