2323// S is the type Any, or
2424
2525var [a0, a1]: any = undefined;
26- >a0 : any, Symbol(a0, Decl(destructuringArrayBindingPatternAndAssignment1ES5.ts, 23, 5))
27- >a1 : any, Symbol(a1, Decl(destructuringArrayBindingPatternAndAssignment1ES5.ts, 23, 8))
28- >undefined : undefined, Symbol(undefined)
26+ >a0 : any
27+ >a1 : any
28+ >undefined : undefined
2929
3030var [a2 = false, a3 = 1]: any = undefined;
31- >a2 : boolean, Symbol(a2, Decl(destructuringArrayBindingPatternAndAssignment1ES5.ts, 24, 5))
31+ >a2 : boolean
3232>false : boolean
33- >a3 : number, Symbol(a3, Decl(destructuringArrayBindingPatternAndAssignment1ES5.ts, 24, 16))
33+ >a3 : number
3434>1 : number
35- >undefined : undefined, Symbol(undefined)
35+ >undefined : undefined
3636
3737// V is an array assignment pattern, S is the type Any or an array-like type (section 3.3.2), and, for each assignment element E in V,
3838// S is a tuple- like type (section 3.3.3) with a property named N of a type that is assignable to the target given in E,
3939// where N is the numeric index of E in the array assignment pattern, or
4040var [b0, b1, b2] = [2, 3, 4];
41- >b0 : number, Symbol(b0, Decl(destructuringArrayBindingPatternAndAssignment1ES5.ts, 29, 5))
42- >b1 : number, Symbol(b1, Decl(destructuringArrayBindingPatternAndAssignment1ES5.ts, 29, 8))
43- >b2 : number, Symbol(b2, Decl(destructuringArrayBindingPatternAndAssignment1ES5.ts, 29, 12))
41+ >b0 : number
42+ >b1 : number
43+ >b2 : number
4444>[2, 3, 4] : [number, number, number]
4545>2 : number
4646>3 : number
4747>4 : number
4848
4949var [b3, b4, b5]: [number, number, string] = [1, 2, "string"];
50- >b3 : number, Symbol(b3, Decl(destructuringArrayBindingPatternAndAssignment1ES5.ts, 30, 5))
51- >b4 : number, Symbol(b4, Decl(destructuringArrayBindingPatternAndAssignment1ES5.ts, 30, 8))
52- >b5 : string, Symbol(b5, Decl(destructuringArrayBindingPatternAndAssignment1ES5.ts, 30, 12))
50+ >b3 : number
51+ >b4 : number
52+ >b5 : string
5353>[1, 2, "string"] : [number, number, string]
5454>1 : number
5555>2 : number
5656>"string" : string
5757
5858function foo() {
59- >foo : () => number[], Symbol(foo, Decl(destructuringArrayBindingPatternAndAssignment1ES5.ts, 30, 62))
59+ >foo : () => number[]
6060
6161 return [1, 2, 3];
6262>[1, 2, 3] : number[]
@@ -66,38 +66,38 @@ function foo() {
6666}
6767
6868var [b6, b7] = foo();
69- >b6 : number, Symbol(b6, Decl(destructuringArrayBindingPatternAndAssignment1ES5.ts, 36, 5))
70- >b7 : number, Symbol(b7, Decl(destructuringArrayBindingPatternAndAssignment1ES5.ts, 36, 8))
69+ >b6 : number
70+ >b7 : number
7171>foo() : number[]
72- >foo : () => number[], Symbol(foo, Decl(destructuringArrayBindingPatternAndAssignment1ES5.ts, 30, 62))
72+ >foo : () => number[]
7373
7474var [...b8] = foo();
75- >b8 : number[], Symbol(b8, Decl(destructuringArrayBindingPatternAndAssignment1ES5.ts, 37, 5))
75+ >b8 : number[]
7676>foo() : number[]
77- >foo : () => number[], Symbol(foo, Decl(destructuringArrayBindingPatternAndAssignment1ES5.ts, 30, 62))
77+ >foo : () => number[]
7878
7979// S is not a tuple- like type and the numeric index signature type of S is assignable to the target given in E.
8080var temp = [1,2,3]
81- >temp : number[], Symbol(temp, Decl(destructuringArrayBindingPatternAndAssignment1ES5.ts, 40, 3))
81+ >temp : number[]
8282>[1,2,3] : number[]
8383>1 : number
8484>2 : number
8585>3 : number
8686
8787var [c0, c1] = [...temp];
88- >c0 : number, Symbol(c0, Decl(destructuringArrayBindingPatternAndAssignment1ES5.ts, 41, 5))
89- >c1 : number, Symbol(c1, Decl(destructuringArrayBindingPatternAndAssignment1ES5.ts, 41, 8))
88+ >c0 : number
89+ >c1 : number
9090>[...temp] : number[]
9191>...temp : number
92- >temp : number[], Symbol(temp, Decl(destructuringArrayBindingPatternAndAssignment1ES5.ts, 40, 3))
92+ >temp : number[]
9393
9494var [c2] = [];
95- >c2 : any, Symbol(c2, Decl(destructuringArrayBindingPatternAndAssignment1ES5.ts, 42, 5))
95+ >c2 : any
9696>[] : undefined[]
9797
9898var [[[c3]], [[[[c4]]]]] = [[[]], [[[[]]]]]
99- >c3 : any, Symbol(c3, Decl(destructuringArrayBindingPatternAndAssignment1ES5.ts, 43, 7))
100- >c4 : any, Symbol(c4, Decl(destructuringArrayBindingPatternAndAssignment1ES5.ts, 43, 17))
99+ >c3 : any
100+ >c4 : any
101101>[[[]], [[[[]]]]] : [[undefined[]], [[[undefined[]]]]]
102102>[[]] : [undefined[]]
103103>[] : undefined[]
@@ -107,16 +107,16 @@ var [[[c3]], [[[[c4]]]]] = [[[]], [[[[]]]]]
107107>[] : undefined[]
108108
109109var [[c5], c6]: [[string|number], boolean] = [[1], true];
110- >c5 : string | number, Symbol(c5, Decl(destructuringArrayBindingPatternAndAssignment1ES5.ts, 44, 6))
111- >c6 : boolean, Symbol(c6, Decl(destructuringArrayBindingPatternAndAssignment1ES5.ts, 44, 10))
110+ >c5 : string | number
111+ >c6 : boolean
112112>[[1], true] : [[number], boolean]
113113>[1] : [number]
114114>1 : number
115115>true : boolean
116116
117117var [, c7] = [1, 2, 3];
118118> : undefined
119- >c7 : number, Symbol(c7, Decl(destructuringArrayBindingPatternAndAssignment1ES5.ts, 45, 6))
119+ >c7 : number
120120>[1, 2, 3] : [number, number, number]
121121>1 : number
122122>2 : number
@@ -126,7 +126,7 @@ var [,,, c8] = [1, 2, 3, 4];
126126> : undefined
127127> : undefined
128128> : undefined
129- >c8 : number, Symbol(c8, Decl(destructuringArrayBindingPatternAndAssignment1ES5.ts, 46, 8))
129+ >c8 : number
130130>[1, 2, 3, 4] : [number, number, number, number]
131131>1 : number
132132>2 : number
@@ -137,7 +137,7 @@ var [,,, c9] = [1, 2, 3, 4];
137137> : undefined
138138> : undefined
139139> : undefined
140- >c9 : number, Symbol(c9, Decl(destructuringArrayBindingPatternAndAssignment1ES5.ts, 47, 8))
140+ >c9 : number
141141>[1, 2, 3, 4] : [number, number, number, number]
142142>1 : number
143143>2 : number
@@ -148,7 +148,7 @@ var [,,,...c10] = [1, 2, 3, 4, "hello"];
148148> : undefined
149149> : undefined
150150> : undefined
151- >c10 : (string | number)[], Symbol(c10, Decl(destructuringArrayBindingPatternAndAssignment1ES5.ts, 48, 8))
151+ >c10 : (string | number)[]
152152>[1, 2, 3, 4, "hello"] : (string | number)[]
153153>1 : number
154154>2 : number
@@ -157,18 +157,18 @@ var [,,,...c10] = [1, 2, 3, 4, "hello"];
157157>"hello" : string
158158
159159var [c11, c12, ...c13] = [1, 2, "string"];
160- >c11 : string | number, Symbol(c11, Decl(destructuringArrayBindingPatternAndAssignment1ES5.ts, 49, 5))
161- >c12 : string | number, Symbol(c12, Decl(destructuringArrayBindingPatternAndAssignment1ES5.ts, 49, 9))
162- >c13 : (string | number)[], Symbol(c13, Decl(destructuringArrayBindingPatternAndAssignment1ES5.ts, 49, 14))
160+ >c11 : string | number
161+ >c12 : string | number
162+ >c13 : (string | number)[]
163163>[1, 2, "string"] : (string | number)[]
164164>1 : number
165165>2 : number
166166>"string" : string
167167
168168var [c14, c15, c16] = [1, 2, "string"];
169- >c14 : number, Symbol(c14, Decl(destructuringArrayBindingPatternAndAssignment1ES5.ts, 50, 5))
170- >c15 : number, Symbol(c15, Decl(destructuringArrayBindingPatternAndAssignment1ES5.ts, 50, 9))
171- >c16 : string, Symbol(c16, Decl(destructuringArrayBindingPatternAndAssignment1ES5.ts, 50, 14))
169+ >c14 : number
170+ >c15 : number
171+ >c16 : string
172172>[1, 2, "string"] : [number, number, string]
173173>1 : number
174174>2 : number
0 commit comments