Alex Lam S.L
|
22cea023d1
|
improve numeral compression (#3108)
|
2018-04-28 02:47:49 +08:00 |
|
Alex Lam S.L
|
257ddc3bdb
|
improve compression of undefined, NaN & Infinitiy (#1748)
- migrate transformation logic from `OutputStream` to `Compressor`
- always turn `undefined` into `void 0` (unless `unsafe`)
- always keep `NaN` except when avoiding local variable redefinition
- introduce `keep_infinity` to suppress `1/0` transform, except when avoiding local variable redefinition
supersedes #1723
fixes #1730
|
2017-04-01 03:02:14 +08:00 |
|
Alex Lam S.L
|
7cb1adf455
|
remove paranthesis for -(x*y) (#1732)
|
2017-03-30 16:09:00 +08:00 |
|
Alex Lam S.L
|
f71f4905b0
|
fix is_number() on += (#1714)
fixes #1710
|
2017-03-28 17:08:16 +08:00 |
|
Alex Lam S.L
|
18059cc94f
|
compress numerical expressions (#1513)
safe operations
- `a === b` => `a == b`
- `a + -b` => `a - b`
- `-a + b` => `b - a`
- `a+ +b` => `+b+a`
associative operations
(bit-wise operations are safe, otherwise `unsafe_math`)
- `a + (b + c)` => `(a + b) + c`
- `(n + 2) + 3` => `5 + n`
- `(2 * n) * 3` => `6 * n`
- `(a | 1) | (2 | d)` => `(3 | a) | b`
fixes #412
|
2017-03-03 18:04:32 +08:00 |
|
philippsimon
|
ee6c9fabb7
|
Fix: Uglified Number.prototype functions on big numbers
|
2016-03-14 12:41:06 +01:00 |
|