Log In
Or create an account ->
Imperial Library
Home
About
News
Upload
Forum
Help
Login/SignUp
Index
Imprint
About Smashing Magazine
About Smashing Media GmbH
About this eBook
Table of Contents
Seven JavaScript Things I Wish I Knew Much Earlier In My Career
Shortcut Notations
JSON As A Data Format
Native JavaScript Functions (Math, Array And String)
Event Delegation
Anonymous Functions And The Module Pattern
Allowing For Configuration
Interacting With The Back End
Browser-Specific Code Is A Waste Of Time. Use Libraries!
Resources
Lessons From A Review Of JavaScript Code
Introduction
Where Can I Get My Code Reviewed?
How Should I Structure My Review Requests?
What Should Code Reviews Provide?
Collaborative Code Reviews
Lessons From A JavaScript Code Review
Problem 1
Problem 4
Problem 6
Problem 7
Problem 8
Problem 9
Conclusion
Find The Right JavaScript Solution With A 7-Step Test
It’s Not About You
Introducing The 7-Step Test For JavaScript Widgets
1. What Happens If JavaScript Is Turned Off?
2. How To Change The Look, Feel And Content?
3. How Usable And Semantic Is The Final Product?
4. Do You Understand What’s Going On?
5. Does It Play Well With Others?
6. How Dedicated Is The Maintainer?
7. Is There A Testing Plan, And Is Upgrading And Extending Easy?
One Final Word On Size
Ten Oddities And Secrets About JavaScript
Data Types And Definitions
1. Null is an Object
2. NaN is a Number
3. An Array With No Keys == False (About Truthy and Falsy)
Regular Expressions
4. replace() Can Accept a Callback Function
5. Regular Expressions: More Than Just Match and Replace
Functions And Scope
6. You Can Fake Scope
7. Functions Can Execute Themselves
The Browser
8. Firefox Reads and Returns Colors in RGB, Not Hex
Miscellaneous
9. 0.1 + 0.2 !== 0.3
10. Undefined Can Be Defined
The Seven Deadly Sins Of JavaScript Implementation
Sins Of Our Fathers: Browser-Specific Code
Libraries to the Rescue
Sin #1: Not Playing Nice With Other Scripts
Sin #2: Believing Instead Of Testing
Sin #3: Using The Wrong Technology For The Job
Sin #4: Depending On JavaScript And Certain Input Devices
When JavaScript Dependence Is Okay (to a Degree)
Consider the Use Cases and Maintenance
Sin #5: Making Maintenance Unnecessarily Hard
Sin #6: Not Documenting Your Code
Special Case: Commenting Out Code
Sin #7: Optimizing For Machines, Not People
A Quick Look Into The Math Of Animations With JavaScript
Going From 0 To 1 Without Being Boring
Not A Sin, Just A Natural Motion
Circles In The Sand, Round And Round…
A Quick DOM Plotting Routine
Searchable Dynamic Content With AJAX Crawling
The Problem With AJAX
Two URLs For The Same Content
Snippets Of HTML
Bookmarking
Serving Up Snippets
Tying It All Together With A Site Map
Google Webmaster Tools
Making Pretty URLs With HTML5
Cloaking
Hash Bang Is A Little Ugly, But It Works
Further Reading
Authors
Addy Osmani
Andy Croxall
Christian Heilmann
Zack Grossbart
← Prev
Back
Next →
← Prev
Back
Next →