Start learning with our library of video tutorials taught by experts. Get started

Practical and Effective JavaScript
Illustration by Don Barnett

Practical and Effective JavaScript

with Joe Marini

Video: Welcome

(Music playing.) JavaScript has grown from a simple language for adding interactivity to web pages to a full-featured programming language. If you are building web applications, you need to have knowledge of this language on your belt more than ever before. I'm Joe Marini. This is Practical and Effective JavaScript. I have spent a better part of my career working in the web and graphics industries as a developer, instructor and author. This title is aimed at familiarizing web designers with some of the more advanced concepts recently introduced into JavaScript.
Expand all | Collapse all
  1. 3m 41s
    1. Welcome
      1m 7s
    2. Using the exercise files
      1m 16s
    3. Using the right tools
      1m 18s
  2. 34m 35s
    1. Writing better code
      8m 17s
    2. Using built-in language features
      10m 23s
    3. Improving JavaScript performance
      11m 14s
    4. Creating reusable modules
      4m 41s
  3. 13m 34s
    1. Understanding exceptions
      1m 49s
    2. Using exceptions
      11m 45s
  4. 30m 58s
    1. Understanding the modern event model
      10m 4s
    2. Using simple event handling
      5m 8s
    3. Dealing with dynamic events
      5m 48s
    4. Handling complex events
      9m 58s
  5. 16m 51s
    1. Separating behavior from content
      3m 9s
    2. Using progressive enhancement
      13m 42s
  6. 54m 6s
    1. Understanding objects
      9m 17s
    2. Defining common object methods
      12m 22s
    3. Using object inheritance
      11m 16s
    4. Extending built-in types
      7m 1s
    5. Using wrapper objects
      14m 10s
  7. 51m 28s
    1. Understanding regular expressions
      6m 53s
    2. Using repetition within expressions
      3m 54s
    3. Understanding alternatives and grouping
      6m 45s
    4. Using alternatives and groups
      4m 46s
    5. Processing strings
      2m 40s
    6. Using string.search()
      5m 45s
    7. Using string.match()
      5m 58s
    8. Using string.replace()
      5m 40s
    9. Understanding the RegExp object
      3m 1s
    10. Using RegExp.exec()
      6m 6s
  8. 1h 32m
    1. Setting context
      3m 56s
    2. Improving forms
      18m 59s
    3. Seeing if a window is already open
      4m 35s
    4. Using information already in the page
      12m 54s
    5. Improving tables
      10m 16s
    6. Sorting data in tables and lists
      11m 4s
    7. Using paginated tables
      9m 56s
    8. Using in-place editing
      12m 42s
    9. Setting up an adaptive layout
      7m 43s
  9. 39m 36s
    1. Discovering tools for debugging and developing
      3m 2s
    2. Using the YSlow plug-in to analyze performance
      3m 25s
    3. Using the Firefox Developer Bar
      5m 1s
    4. Debugging with Firebug
      13m 57s
    5. Using the Developer Bar in Internet Explorer
      7m 36s
    6. Debugging with Visual Web Developer
      6m 35s
  10. 45s
    1. Goodbye
      45s

Watch this entire course now—plus get access to every course in the library. Each course includes high-quality videos taught by expert instructors.

Become a member
please wait ...
Practical and Effective JavaScript
5h 37m Intermediate Apr 21, 2009

Viewers: in countries Watching now:

JavaScript is essential in the creation of powerful web sites and applications. In Practical and Effective JavaScript, instructor Joe Marini presents the next level of features that experienced developers need to streamline their workflows and introduce dynamic new functions to their projects. Joe teaches tips for improving JavaScript performance, ways to separate programming behavior from page content, and principles for understanding the modern DOM event model. Finally, Joe introduces some of the more advanced concepts recently built into JavaScript. An understanding of the JavaScript language is a prerequisite for this course, which includes exercise files.

Topics include:
  • Using built-in language features
  • Creating reusable modules to save programming time
  • Dealing with dynamic and complex events
  • Understanding object-oriented JavaScript
  • Reviewing practical JavaScript examples to use in the workplace
  • Discovering tools for debugging and developing websites
Subjects:
Developer Web Programming Languages Web Development
Software:
JavaScript
Author:
Joe Marini

Welcome

(Music playing.) JavaScript has grown from a simple language for adding interactivity to web pages to a full-featured programming language. If you are building web applications, you need to have knowledge of this language on your belt more than ever before. I'm Joe Marini. This is Practical and Effective JavaScript. I have spent a better part of my career working in the web and graphics industries as a developer, instructor and author. This title is aimed at familiarizing web designers with some of the more advanced concepts recently introduced into JavaScript.

We'll take a look at the modern DOM Event Model, get in to the features of object oriented programming and I'll show you how to separate programming behavior from the page content. I'll also give you some tips on how you can use progressive enhancement in your web pages, show you some great tools for developing and debugging your scripts and provide a set of finished examples that you can then reuse in your web pages. Every topic I cover in this course will help prepare you for working on more advanced websites to have increasingly demanding features. So let's learn the language of the web with practical and effective JavaScript.

Find answers to the most frequently asked questions about Practical and Effective JavaScript.


Expand all | Collapse all
please wait ...
Q: There is a discrepancy between the tutorials and the exercise files that is causing me some confusion. For example, in the movie "Handling complex effects" in Chapter 3.

Exercise File:

function addEventHandler(oNode, evt, oFunc, bCaptures) {

if (typeof (oNode.attachEvent) != "undefined")
 

Video:

function addEventHandler(oNode, evt, oFunc, bCaptures) {

if (typeof (window.event) != "undefined")

Exercise Files:

if (e.cancelBubble != null) e.cancelBubble=true;

else e.stopPropagation();
 
Video:

if (e.eventPhase) {

if (e.eventPhase != 1
}
stopEvent(evt);

}

The event handlers' capture value is also reversed for I.E./Firefox between the videos and exercise files. What's going on?
A: We made these changes to the videos because they more accurately reflect the capabilities that are being tested for in the browser, and because the WebKit-based browsers added support for a window.event property ,which was throwing off the test and causing the code to think that it was running inside IE when it wasn't.
 
Testing for the presence of the attachEvent method is much more accurate than the old test.
 
Share a link to this course

What are exercise files?

Exercise files are the same files the author uses in the course. Save time by downloading the author's files instead of setting up your own files, and learn by following along with the instructor.

Can I take this course without the exercise files?

Yes! If you decide you would like the exercise files later, you can upgrade to a premium account any time.

Become a member Download sample files See plans and pricing

Please wait... please wait ...
Upgrade to get access to exercise files.

Exercise files video

How to use exercise files.

Learn by watching, listening, and doing, Exercise files are the same files the author uses in the course, so you can download them and follow along Premium memberships include access to all exercise files in the library.


Exercise files

Exercise files video

How to use exercise files.

For additional information on downloading and using exercise files, watch our instructional video or read the instructions in the FAQ.

This course includes free exercise files, so you can practice while you watch the course. To access all the exercise files in our library, become a Premium Member.

Join now "Already a member? Log in

Are you sure you want to mark all the videos in this course as unwatched?

This will not affect your course history, your reports, or your certificates of completion for this course.


Mark all as unwatched Cancel

Congratulations

You have completed Practical and Effective JavaScript.

Return to your organization's learning portal to continue training, or close this page.


OK

Course retiring soon

Practical and Effective JavaScript will be retired from the lynda.com library on October 6, 2014. Training videos and exercise files will no longer be available, but the course will still appear in your course history and certificates of completion. For updated training, check out JavaScript Essential Training in the lynda.com Online Training Library.


Become a member to add this course to a playlist

Join today and get unlimited access to the entire library of video courses—and create as many playlists as you like.

Get started

Already a member?

Become a member to like this course.

Join today and get unlimited access to the entire library of video courses.

Get started

Already a member?

Exercise files

Learn by watching, listening, and doing! Exercise files are the same files the author uses in the course, so you can download them and follow along. Exercise files are available with all Premium memberships. Learn more

Get started

Already a Premium member?

Exercise files video

How to use exercise files.

Ask a question

Thanks for contacting us.
You’ll hear from our Customer Service team within 24 hours.

Please enter the text shown below:

The classic layout automatically defaults to the latest Flash Player.

To choose a different player, hold the cursor over your name at the top right of any lynda.com page and choose Site preferencesfrom the dropdown menu.

Continue to classic layout Stay on new layout
Exercise files

Access exercise files from a button right under the course name.

Mark videos as unwatched

Remove icons showing you already watched videos if you want to start over.

Control your viewing experience

Make the video wide, narrow, full-screen, or pop the player out of the page into its own window.

Interactive transcripts

Click on text in the transcript to jump to that spot in the video. As the video plays, the relevant spot in the transcript will be highlighted.

Are you sure you want to delete this note?

No

Your file was successfully uploaded.

Thanks for signing up.

We’ll send you a confirmation email shortly.


Sign up and receive emails about lynda.com and our online training library:

Here’s our privacy policy with more details about how we handle your information.

Keep up with news, tips, and latest courses with emails from lynda.com.

Sign up and receive emails about lynda.com and our online training library:

Here’s our privacy policy with more details about how we handle your information.

   
submit Lightbox submit clicked
Terms and conditions of use

We've updated our terms and conditions (now called terms of service).Go
Review and accept our updated terms of service.