diff options
| author | Robin Böhm | 2013-04-28 20:05:44 +0200 |
|---|---|---|
| committer | Pete Bacon Darwin | 2013-04-29 10:19:07 +0100 |
| commit | cb62a57d438f94dff32218ba095a6a63b1db958f (patch) | |
| tree | 89f571f5220c8413996c3f512e7f2235e8dedb44 /src/ng/directive/ngClass.js | |
| parent | 61c0adedc3fb936e268588d8cfc77df0962453c7 (diff) | |
| download | angular.js-cb62a57d438f94dff32218ba095a6a63b1db958f.tar.bz2 | |
refact(ngClass): improve performance through bitwise operations
Change modulo % 2 operations to bitwise & 1
Read about this in Nicholas C. Zakas book "High Performance JavaScript"(ISBN: 978-0-596-80279-0)
Use the Fast Parts --> Bitwise Operators --> Page 156++
Proven at http://jsperf.com/modulo-vs-bitwise/11
Diffstat (limited to 'src/ng/directive/ngClass.js')
| -rw-r--r-- | src/ng/directive/ngClass.js | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/src/ng/directive/ngClass.js b/src/ng/directive/ngClass.js index 435907af..e936ee22 100644 --- a/src/ng/directive/ngClass.js +++ b/src/ng/directive/ngClass.js @@ -15,9 +15,9 @@ function classDirective(name, selector) { if (name !== 'ngClass') { scope.$watch('$index', function($index, old$index) { - var mod = $index % 2; - if (mod !== old$index % 2) { - if (mod == selector) { + var mod = $index & 1; + if (mod !== old$index & 1) { + if (mod === selector) { addClass(scope.$eval(attr[name])); } else { removeClass(scope.$eval(attr[name])); |
