1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149
|
=== tests/cases/conformance/statements/VariableStatements/validMultipleVariableDeclarations.ts ===
// all expected to be valid
var x: number;
>x : number
var x = 2;
>x : number
>2 : 2
if (true) {
>true : true
var x = 3;
>x : number
>3 : 3
for (var x = 0; ;) { }
>x : number
>0 : 0
}
var x = <number>undefined;
>x : number
><number>undefined : number
>undefined : undefined
// new declaration space, making redeclaring x as a string valid
function declSpace() {
>declSpace : () => void
var x = 'this is a string';
>x : string
>'this is a string' : "this is a string"
}
interface Point { x: number; y: number; }
>x : number
>y : number
var p: Point;
>p : Point
var p = { x: 1, y: 2 };
>p : Point
>{ x: 1, y: 2 } : { x: number; y: number; }
>x : number
>1 : 1
>y : number
>2 : 2
var p: Point = { x: 0, y: undefined };
>p : Point
>{ x: 0, y: undefined } : { x: number; y: undefined; }
>x : number
>0 : 0
>y : undefined
>undefined : undefined
var p = { x: 1, y: <number>undefined };
>p : Point
>{ x: 1, y: <number>undefined } : { x: number; y: number; }
>x : number
>1 : 1
>y : number
><number>undefined : number
>undefined : undefined
var p: { x: number; y: number; } = { x: 1, y: 2 };
>p : Point
>x : number
>y : number
>{ x: 1, y: 2 } : { x: number; y: number; }
>x : number
>1 : 1
>y : number
>2 : 2
var p = <{ x: number; y: number; }>{ x: 0, y: undefined };
>p : Point
><{ x: number; y: number; }>{ x: 0, y: undefined } : { x: number; y: number; }
>x : number
>y : number
>{ x: 0, y: undefined } : { x: number; y: undefined; }
>x : number
>0 : 0
>y : undefined
>undefined : undefined
var p: typeof p;
>p : Point
>p : Point
var fn = function (s: string) { return 42; }
>fn : (s: string) => number
>function (s: string) { return 42; } : (s: string) => number
>s : string
>42 : 42
var fn = (s: string) => 3;
>fn : (s: string) => number
>(s: string) => 3 : (s: string) => number
>s : string
>3 : 3
var fn: (s: string) => number;
>fn : (s: string) => number
>s : string
var fn: { (s: string): number };
>fn : (s: string) => number
>s : string
var fn = <(s: string) => number> null;
>fn : (s: string) => number
><(s: string) => number> null : (s: string) => number
>s : string
>null : null
var fn: typeof fn;
>fn : (s: string) => number
>fn : (s: string) => number
var a: string[];
>a : string[]
var a = ['a', 'b']
>a : string[]
>['a', 'b'] : string[]
>'a' : "a"
>'b' : "b"
var a = <string[]>[];
>a : string[]
><string[]>[] : string[]
>[] : undefined[]
var a: string[] = [];
>a : string[]
>[] : undefined[]
var a = new Array<string>();
>a : string[]
>new Array<string>() : string[]
>Array : ArrayConstructor
var a: typeof a;
>a : string[]
>a : string[]
|