Learning JavaScript
Home > Computing and Information Technology > Computer programming / software engineering > Programming and scripting languages: general > Learning JavaScript: A Hands-On Guide to the Fundamentals of Modern JavaScript
Learning JavaScript: A Hands-On Guide to the Fundamentals of Modern JavaScript

Learning JavaScript: A Hands-On Guide to the Fundamentals of Modern JavaScript

|
     0     
5
4
3
2
1




Out of Stock


Notify me when this book is in stock
About the Book

Get Started Fast with  Modern JavaScript Web Development!   With the arrival of HTML5, jQuery, and Ajax, JavaScript web development skills are more valuable  than ever! This complete, hands-on JavaScript tutorial covers everything you need to know now.  Using line-by-line code walkthroughs and end-of-chapter exercises, top web developer and speaker Tim Wright will help you get results fast, even if you’ve never written a line of JavaScript before.   Smart, friendly, enthusiastic, and packed with modern examples, Learning JavaScript covers both design-level and development-level JavaScript. You’ll find expert knowledge and best practices for everything from jQuery and interface design to code organization and front-end templating. Wright’s focused coverage includes regular break points and clear reviews that make modern JavaScript easier to learn—and easier to use!   Learning JavaScript is your fastest route  to success with JavaScript—whether you’re entirely new to the language or you need to  sharpen and upgrade skills you first learned  a decade ago!   Coverage includes   • Mastering all of the JavaScript concepts and terminology you need to write new programs  or efficiently modify existing code • Creating robust, secure code for both the design and development levels • Maximizing usability, reusability, accessibility, clarity, security, and performance • Taking full advantage of the browser environments your code will run in • Accessing the DOM to create behaviors and data interactions • Storing data for easy and efficient access • Using variables, functions, loops, and other core language features • Interacting with users through events • Communicating with servers through Ajax • Improving your productivity with JavaScript libraries

Table of Contents:
I>Chapter 1: Progressive Enhancement 3 Defining Progressive Enhancement 3 History 4 Purpose 5 Accessibility 5 Reusability 5 Progressive Enhancement Versus Graceful Degradation 6 Structure Layer 6 Adding More Meaning with HTML5 8 Presentation Layer 9 Inline CSS 10 Linking Up Your Stylesheet 10 Behavior Layer 12 Inline JavaScript 12 Embedded JavaScript 13 External and Unobtrusive JavaScript 15 Benefits of Progressive Enhancement 16 Performance 17 Building for the Future 17 The Touch Interface 18 Final Words on Progressive Enhancement 19 Summary 20 Exercises 20 Chapter 2: JavaScript in the Browser 21 A People’s History of JavaScript 21 Origins 22 Progressive Enhancement 23 The Behavior Layer 24 Moving Past Today 24 Browser Interactions with JavaScript 25 HTTP Requests 26 JavaScript and Rendering Engines 29 What JavaScript Can Do 30 Modifying HTML 31 Communicating with the Server 31 Storing Data 31 How You Should Use JavaScript 32 Improving User Experience 32 Using JavaScript Responsibly 32 Creating Fallbacks 34 Tools to Help You Use JavaScript 36 Tools Built into the Language 36 Tools Built into the Browser 37 Summary 38 Exercises 38 Chapter 3: JavaScript Terminology 39 Basics 39 Document Object Model (DOM) 39 Parents 40 Children 40 Siblings 41 Variables 41 Strings 43 Comments 43 Operators 44 Use Strict 45 Storage 45 Cache 45 Arrays 45 Cookies 46 JavaScript Object Notation (JSON) 46 Objects 47 Creating Interaction 47 Loops 48 Conditionals 48 switch Statement 49 Functions 50 Anonymous Functions 51 Callback Functions 52 Methods 53 Events 54 Ajax 54 Summary 55 Exercises 55 Chapter 4: Accessing the DOM 57 What Is the DOM? 57 The DOM Tree 58 Element Nodes 59 Text Nodes 60 Attribute Nodes 62 Working with the Element Node 62 Targeting by ID 63 Targeting by Tag Name 64 Targeting by Class 67 Using CSS Selectors in JavaScript to Target Nodes 68 Working with the Attribute Node 70 Getting an Attribute 71 Setting an Attribute 72 Removing an Attribute 73 Working with the Text Node and Changing Content 73 Moving Around the DOM 74 Accessing First and Last Child 76 Dynamically Adding and Removing Nodes from the DOM 77 Adding Elements to the DOM 77 Removing Elements from the DOM 78 Summary 79 Exercises 79 Chapter 5: Storing Data in JavaScript 81 Variables 81 Strings 82 Numbers 83 Boolean 84 Performance in Variables 84 Arrays 85 Basic Array 85 Associative Array 87 Multidimensional Array 87 Pushing Data into an Array 89 Working with Array Methods 89 join 90 slice 90 shift and unshift 91 pop 92 concat 92 sort 93 Objects 93 Performance in Objects 94 JSON 95 Benefits of Using JSON 96 Using an API 96 Web Storage in HTML5 97 localStorage and sessionStorage 97 setItem 97 getItem 98 removeItem 98 Storing Chunks of Data with JSON 99 Using Web Storage Responsibly 100 Summary 101 Exercises 101 Chapter 6: Variables, Functions, and Loops 103 Defining Variables 103 Grouping Variables 104 Reserved Terms 104 Functions 105 Basic Functions 106 Anonymous Functions 107 Scope 108 Calling a Function with a Function 109 Returning Data 110 A Function as a Method 112 Loops 113 for Loop 114 Conditionals 116 if Statement 116 if/else Statement 117 switch Statement 118 if versus switch 119 Putting It All Together 120 Summary 121 Exercises 122 Chapter 7: Interacting with the User Through Events 123 Attaching an Event 124 Event Handlers 124 Event Listeners 125 Binding Events 128 Unbinding Events 129 Mouse and Keyboard Events 130 click 132 focus and blur 134 Accessibility 135 change 135 mouseover and mouseout (hovering) 136 submit 137 Preventing Default Behavior 139 keydown, keypress, and keyup 139 Putting It All Together 140 Touch and Orientation Events 143 touchstart and touchend 144 touchmove 145 orientationchange 145 Support for Touch Events 146 Putting It All Together 147 Summary 148 Exercises 148 Chapter 8: Communicating with the Server Through Ajax 149 Ajax History 150 Server Communication 151 The XMLHttpRequest 152 Creating an Ajax Call 154 Sending a Request to the Server 155 Receiving Data Back from the Server 158 Making Repeat Ajax Calls 163 Ajax Data Formats 164 XML 165 HTML 166 JSON 167 Ajax Accessibility 168 Live Regions and ARIA 169 Common Ajax Mistakes 170 Providing Feedback 170 Putting It All Together 172 Where Is Ajax Going? 177 Summary 177 Exercises 178 Chapter 9: Code Organization 179 General Coding Style Rules 180 Scope 181 Failing Quickly 183 User Experience 185 Code Design 185 Files and Directories 186 In-document Script 187 Variable Declarations 188 Variable and Function Naming 189 Comments 190 Indentation 192 Whitespace 193 Statement Spacing 194 Line Breaks 195 Math and Operators 196 Using eval() 197 Taking Style Guides Too Far 199 Code Structure 200 Functions 200 Anonymous Functions 201 Functions as Variables 202 Functions as Methods 202 JavaScript Development Patterns 204 Summary 208 Exercises 209 Chapter 10: Making JavaScript Easier with Libraries 211 JavaScript Library Basics 212 The Library Learning Process 213 Syntax 214 Focusing on the Goal 214 Creating Shortcuts 215 Fixing Browser Issues 216 Popular Libraries 216 jQuery Basics 221 document.ready 222 Selectors 223 Traveling Through the DOM 225 Adding Style Information 226 Binding Events 227 Animation 227 jQuery Nonbasics 228 Using Ajax in jQuery 228 Looping Through Data in jQuery 230 Chaining Functions 232 Extending Libraries Through Plug-ins 233 Building a Plug-in 234 The Good of Libraries 236 Popularity and Community 236 Efficient Code 237 The Bad of Libraries 238 Overhead 238 Performance 239 Overreliance and Shelf Life 239 Using Microlibraries 240 The Good 240 The Bad 241 Summary 242 Exercises 242 Chapter 11: HTML5 JavaScript APIs 243 What Is HTML5? 244 The Markup (aka HTML) 244 Creating Better Semantics 245 Building More Accessible Content 245 The JavaScript APIs 248 The navigator Object 248 Geolocation 249 Audio and Video 251 History API 254 Web Workers 259 Device API 265 The Battery Status API 266 The Vibration API 267 The Network Information API 268 Using This Today with Feature Detection 270 Summary 271 Exercises 272 Chapter 12: Moving Forward with JavaScript 273 A Brief Review of Key Topics 274 Progressive Enhancement 274 DOM Manipulation 275 Data Storage 277 Server Communication 279 JavaScript for Designers 279 Advanced Interface Design 280 CSS Transforms in JavaScript 284 Interacting from the Desktop 289 JavaScript for Developers 293 JavaScript Templates 294 JavaScript on the Server with NodeJS 299 Summary 302 Exercises 303 Answers 305 Index 309


Best Sellers


Product Details
  • ISBN-13: 9780133016260
  • Binding: Digital download
  • No of Pages: 360
  • Weight: 1 gr
  • ISBN-10: 0133016269
  • Language: English
  • Sub Title: A Hands-On Guide to the Fundamentals of Modern JavaScript


Similar Products

Add Photo
Add Photo

Customer Reviews

REVIEWS      0     
Click Here To Be The First to Review this Product
Learning JavaScript: A Hands-On Guide to the Fundamentals of Modern JavaScript
-
Learning JavaScript: A Hands-On Guide to the Fundamentals of Modern JavaScript
Writing guidlines
We want to publish your review, so please:
  • keep your review on the product. Review's that defame author's character will be rejected.
  • Keep your review focused on the product.
  • Avoid writing about customer service. contact us instead if you have issue requiring immediate attention.
  • Refrain from mentioning competitors or the specific price you paid for the product.
  • Do not include any personally identifiable information, such as full names.

Learning JavaScript: A Hands-On Guide to the Fundamentals of Modern JavaScript

Required fields are marked with *

Review Title*
Review
    Add Photo Add up to 6 photos
    Would you recommend this product to a friend?
    Tag this Book Read more
    Does your review contain spoilers?
    What type of reader best describes you?
    I agree to the terms & conditions
    You may receive emails regarding this submission. Any emails will include the ability to opt-out of future communications.

    CUSTOMER RATINGS AND REVIEWS AND QUESTIONS AND ANSWERS TERMS OF USE

    These Terms of Use govern your conduct associated with the Customer Ratings and Reviews and/or Questions and Answers service offered by Bookswagon (the "CRR Service").


    By submitting any content to Bookswagon, you guarantee that:
    • You are the sole author and owner of the intellectual property rights in the content;
    • All "moral rights" that you may have in such content have been voluntarily waived by you;
    • All content that you post is accurate;
    • You are at least 13 years old;
    • Use of the content you supply does not violate these Terms of Use and will not cause injury to any person or entity.
    You further agree that you may not submit any content:
    • That is known by you to be false, inaccurate or misleading;
    • That infringes any third party's copyright, patent, trademark, trade secret or other proprietary rights or rights of publicity or privacy;
    • That violates any law, statute, ordinance or regulation (including, but not limited to, those governing, consumer protection, unfair competition, anti-discrimination or false advertising);
    • That is, or may reasonably be considered to be, defamatory, libelous, hateful, racially or religiously biased or offensive, unlawfully threatening or unlawfully harassing to any individual, partnership or corporation;
    • For which you were compensated or granted any consideration by any unapproved third party;
    • That includes any information that references other websites, addresses, email addresses, contact information or phone numbers;
    • That contains any computer viruses, worms or other potentially damaging computer programs or files.
    You agree to indemnify and hold Bookswagon (and its officers, directors, agents, subsidiaries, joint ventures, employees and third-party service providers, including but not limited to Bazaarvoice, Inc.), harmless from all claims, demands, and damages (actual and consequential) of every kind and nature, known and unknown including reasonable attorneys' fees, arising out of a breach of your representations and warranties set forth above, or your violation of any law or the rights of a third party.


    For any content that you submit, you grant Bookswagon a perpetual, irrevocable, royalty-free, transferable right and license to use, copy, modify, delete in its entirety, adapt, publish, translate, create derivative works from and/or sell, transfer, and/or distribute such content and/or incorporate such content into any form, medium or technology throughout the world without compensation to you. Additionally,  Bookswagon may transfer or share any personal information that you submit with its third-party service providers, including but not limited to Bazaarvoice, Inc. in accordance with  Privacy Policy


    All content that you submit may be used at Bookswagon's sole discretion. Bookswagon reserves the right to change, condense, withhold publication, remove or delete any content on Bookswagon's website that Bookswagon deems, in its sole discretion, to violate the content guidelines or any other provision of these Terms of Use.  Bookswagon does not guarantee that you will have any recourse through Bookswagon to edit or delete any content you have submitted. Ratings and written comments are generally posted within two to four business days. However, Bookswagon reserves the right to remove or to refuse to post any submission to the extent authorized by law. You acknowledge that you, not Bookswagon, are responsible for the contents of your submission. None of the content that you submit shall be subject to any obligation of confidence on the part of Bookswagon, its agents, subsidiaries, affiliates, partners or third party service providers (including but not limited to Bazaarvoice, Inc.)and their respective directors, officers and employees.

    Accept

    New Arrivals

    Inspired by your browsing history


    Your review has been submitted!

    You've already reviewed this product!