124 lines
1.7 KiB
JavaScript
124 lines
1.7 KiB
JavaScript
|
//// [incrementAndDecrement.ts]
|
||
|
enum E { A, B, C };
|
||
|
var x = 4;
|
||
|
var e = E.B;
|
||
|
var a: any;
|
||
|
var w = window;
|
||
|
|
||
|
// Assign to expression++
|
||
|
x++ = 4; // Error
|
||
|
|
||
|
// Assign to expression--
|
||
|
x-- = 5; // Error
|
||
|
|
||
|
// Assign to++expression
|
||
|
++x = 4; // Error
|
||
|
|
||
|
// Assign to--expression
|
||
|
--x = 5; // Error
|
||
|
|
||
|
// Pre and postfix++ on number
|
||
|
x++;
|
||
|
x--;
|
||
|
++x;
|
||
|
--x;
|
||
|
++x++; // Error
|
||
|
--x--; // Error
|
||
|
++x--; // Error
|
||
|
--x++; // Error
|
||
|
|
||
|
// Pre and postfix++ on enum
|
||
|
e++;
|
||
|
e--;
|
||
|
++e;
|
||
|
--e;
|
||
|
++e++; // Error
|
||
|
--e--; // Error
|
||
|
++e--; // Error
|
||
|
--e++; // Error
|
||
|
|
||
|
// Pre and postfix++ on value of type 'any'
|
||
|
a++;
|
||
|
a--;
|
||
|
++a;
|
||
|
--a;
|
||
|
++a++; // Error
|
||
|
--a--; // Error
|
||
|
++a--; // Error
|
||
|
--a++; // Error
|
||
|
|
||
|
|
||
|
// Pre and postfix++ on other types
|
||
|
w++; // Error
|
||
|
w--; // Error
|
||
|
++w; // Error
|
||
|
--w; // Error
|
||
|
++w++; // Error
|
||
|
--w--; // Error
|
||
|
++w--; // Error
|
||
|
--w++; // Error
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
//// [incrementAndDecrement.js]
|
||
|
var E;
|
||
|
(function (E) {
|
||
|
E[E["A"] = 0] = "A";
|
||
|
E[E["B"] = 1] = "B";
|
||
|
E[E["C"] = 2] = "C";
|
||
|
})(E || (E = {}));
|
||
|
;
|
||
|
var x = 4;
|
||
|
var e = 1 /* B */;
|
||
|
var a;
|
||
|
var w = window;
|
||
|
// Assign to expression++
|
||
|
x++;
|
||
|
4; // Error
|
||
|
// Assign to expression--
|
||
|
x--;
|
||
|
5; // Error
|
||
|
// Assign to++expression
|
||
|
++x;
|
||
|
4; // Error
|
||
|
// Assign to--expression
|
||
|
--x;
|
||
|
5; // Error
|
||
|
// Pre and postfix++ on number
|
||
|
x++;
|
||
|
x--;
|
||
|
++x;
|
||
|
--x;
|
||
|
++x++; // Error
|
||
|
--x--; // Error
|
||
|
++x--; // Error
|
||
|
--x++; // Error
|
||
|
// Pre and postfix++ on enum
|
||
|
e++;
|
||
|
e--;
|
||
|
++e;
|
||
|
--e;
|
||
|
++e++; // Error
|
||
|
--e--; // Error
|
||
|
++e--; // Error
|
||
|
--e++; // Error
|
||
|
// Pre and postfix++ on value of type 'any'
|
||
|
a++;
|
||
|
a--;
|
||
|
++a;
|
||
|
--a;
|
||
|
++a++; // Error
|
||
|
--a--; // Error
|
||
|
++a--; // Error
|
||
|
--a++; // Error
|
||
|
// Pre and postfix++ on other types
|
||
|
w++; // Error
|
||
|
w--; // Error
|
||
|
++w; // Error
|
||
|
--w; // Error
|
||
|
++w++; // Error
|
||
|
--w--; // Error
|
||
|
++w--; // Error
|
||
|
--w++; // Error
|