TypeScript/tests/baselines/reference/spliceES6.types
Tom Jenkinson ddcf139668
make splice deleteCount required in es5.d.ts (#32643)
* make splice `deleteCount` required in es5.d.ts

In ES5 `deleteCount` is not an optional argument. If it is not provided it defaults to 0 as a side effect of `undefined` being converted to an integer.

In ES6 `deleleteCount` is optional, and it defaults to the length of the array minus the start index.

If you are targeting ES5 but don't provide `deleteCount` the behaviour will be different depending on the environment your build is running in.

fixes #32638

* update baselines
2020-03-12 14:28:14 -07:00

22 lines
1,012 B
Plaintext

=== tests/cases/compiler/spliceES6.ts ===
// see #32638
var arr1 = [0].splice(0)
>arr1 : number[]
>[0].splice(0) : number[]
>[0].splice : { (start: number, deleteCount: number): number[]; (start: number, deleteCount: number, ...items: number[]): number[]; (start: number, deleteCount?: number): number[]; }
>[0] : number[]
>0 : 0
>splice : { (start: number, deleteCount: number): number[]; (start: number, deleteCount: number, ...items: number[]): number[]; (start: number, deleteCount?: number): number[]; }
>0 : 0
var arr2 = [0].splice(0, 1)
>arr2 : number[]
>[0].splice(0, 1) : number[]
>[0].splice : { (start: number, deleteCount: number): number[]; (start: number, deleteCount: number, ...items: number[]): number[]; (start: number, deleteCount?: number): number[]; }
>[0] : number[]
>0 : 0
>splice : { (start: number, deleteCount: number): number[]; (start: number, deleteCount: number, ...items: number[]): number[]; (start: number, deleteCount?: number): number[]; }
>0 : 0
>1 : 1