| OLD | NEW |
| (Empty) |
| 1 library angular.perf.try_catch; | |
| 2 | |
| 3 import '_perf.dart'; | |
| 4 | |
| 5 /** | |
| 6 * Compare with JS: http://jsperf.com/throw-new-error-vs-throw-name-error | |
| 7 * | |
| 8 * JavaScript vs Dart times on same machine: | |
| 9 * | |
| 10 * JavaScript Dart | |
| 11 * try-catch no stack: 4,952,173 3,944,303 ops/sec | |
| 12 * try-catch with stack: 111,815 840,843 ops/sec | |
| 13 * try-catch read stack: 9,206 9,356 ops/sec | |
| 14 */ | |
| 15 main() { | |
| 16 var obj = {}; | |
| 17 time('try-catch no stack', () { | |
| 18 try { throw obj; } catch(e) { return e; } | |
| 19 } ); | |
| 20 time('try-catch with stack', () { | |
| 21 try { throw obj; } catch(e, s) { return s; } | |
| 22 } ); | |
| 23 time('try-catch read stack', () { | |
| 24 try { throw obj; } catch(e, s) { return '$s'; } | |
| 25 } ); | |
| 26 } | |
| OLD | NEW |