Skip to content

Object.keys has wrong return type from 2.1 #12870

Closed
@davhdavh

Description

@davhdavh

TypeScript Version: 2.1.4

Code

let test = {a:1, b:1};
let a = Object.keys(test); //currently string[]

interface ObjectConstructor2 extends ObjectConstructor {
   keys<T>(o: T): (keyof T)[];
}
let correct = (<ObjectConstructor2>Object).keys(test);

Expected behavior:
keys actually returns keys

Actual behavior:
keys returns non-specific string array

Metadata

Metadata

Assignees

No one assigned

    Labels

    Working as IntendedThe behavior described is the intended behavior; this is not a bug

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions