7print.bg = 1 принтиране + 2 плотиране + 3 подвързване + 4 чаши + 5 тениски + 6 книгоиздаване + 7 рекламни м-ли 088 682 47 47
Категории
Higb Performance Java Script

Higb Performance Java Script

Сумата се прибавя директно в кошницата
13.00лв


Table of Contents
Preface xi
 
1. Loading and Execution 1
 
Script Positioning 2
 
Grouping Scripts 4
 
Nonblocking Scripts 5
 
Deferred Scripts 5
 
Dynamic Script Elements 6
 
XMLHttpRequest Script Injection 9
 
Recommended Nonblocking Pattern 10
 
Summary 14
 
2. Data Access 15
 
Managing Scope 16
 
Scope Chains and Identifier Resolution 16
 
Identifier Resolution Performance 19
 
Scope Chain Augmentation 21
 
Dynamic Scopes 24
 
Closures, Scope, and Memory 24
 
Object Members 27
 
Prototypes 27
 
Prototype Chains 29
 
Nested Members 30
 
Caching Object Member Values 31
 
Summary 33
 
3. DOM Scripting 35
 
DOM in the Browser World 35
 
Inherently Slow 36
 
DOM Access and Modification 36
 
innerHTML Versus DOM methods 37

 

Cloning Nodes 41
 
HTML Collections 42
 
Walking the DOM 46
 
Repaints and Reflows 50
 
When Does a Reflow Happen? 51
 
Queuing and Flushing Render Tree Changes 51
 
Minimizing Repaints and Reflows 52
 
Caching Layout Information 56
 
Take Elements Out of the Flow for Animations 56
 
IE and :hover 57
 
Event Delegation 57
 
Summary 59
 
4. Algorithms and Flow Control 61
 
Loops 61
 
Types of Loops 61
 
Loop Performance 63
 
Function-Based Iteration 67
 
Conditionals 68
 
if-else Versus switch 68
 
Optimizing if-else 70
 
Lookup Tables 72
 
Recursion 73
 
Call Stack Limits 74
 
Recursion Patterns 75
 
Iteration 76
 
Memoization 77
 
Summary 79
 
5. Strings and Regular Expressions 81
 
String Concatenation 81
 
Plus (+) and Plus-Equals (+=) Operators 82
 
Array Joining 84
 
String.prototype.concat 86
 
Regular Expression Optimization 87
 
How Regular Expressions Work 88
 
Understanding Backtracking 89
 
Runaway Backtracking 91
 
A Note on Benchmarking 96
 
More Ways to Improve Regular Expression Efficiency 96
 
When Not to Use Regular Expressions 99
 
String Trimming 99
 
Trimming with Regular Expressions 99

 

Trimming Without Regular Expressions 102
A Hybrid Solution 103
Summary 104
Responsive Interfaces 107
The Browser UI Thread 107
Browser Limits 109
How Long Is Too Long? 110
Yielding with Timers 111
Timer Basics 112
Timer Precision 114
Array Processing with Timers 114
Splitting Up Tasks 116
Timed Code 118
Timers and Performance 119
Web Workers 120
Worker Environment 120
Worker Communication 121
Loading External Files 122
Practical Uses 122
Summary 124
Ajax 125
Data Transmission 125
Requesting Data 125
Sending Data 131
Data Formats 134
XML 134
JSON 137
HTML 141
Custom Formatting 142
Data Format Conclusions 144
Ajax Performance Guidelines 145
Cache Data 145
Know the Limitations of Your Ajax Library 148
Summary 149
Programming Practices 151
Avoid Double Evaluation 151
Use Object/Array Literals 153
Don’t Repeat Work 154
Lazy Loading 154
Conditional Advance Loading 156
Use the Fast Parts 156
 
Bitwise Operators 156
 
Native Methods 159
 
Summary 161
 
9. Building and Deploying High-Performance JavaScript Applications 163
 
Apache Ant 163
 
Combining JavaScript Files 165
 
Preprocessing JavaScript Files 166
 
JavaScript Minification 168
 
Buildtime Versus Runtime Build Processes 170
 
JavaScript Compression 170
 
Caching JavaScript Files 171
 
Working Around Caching Issues 172
 
Using a Content Delivery Network 173
 
Deploying JavaScript Resources 173
 
Agile JavaScript Build Process 174
 
Summary 175
 
10. Tools 177
 
JavaScript Profiling 178
 
YUI Profiler 179
 
Anonymous Functions 182
 
Firebug 183
 
Console Panel Profiler 183
 
Console API 184
 
Net Panel 185
 
Internet Explorer Developer Tools 186
 
Safari Web Inspector 188
 
Profiles Panel 189
 
Resources Panel 191
 
Chrome Developer Tools 192
 
Script Blocking 193
 
Page Speed 194
 
Fiddler 196
 
YSlow 198
 
dynaTrace Ajax Edition 199
 
Summary 202
 
Index 203
`