JavaScript Tutorials

  • By
    Kickstart Kyle Simpson

    If you didn't already know, I'm a massive fan of Kyle Simpson, also known as @getify.  He's one of those JavaScript legends you don't hear nearly enough about.  He's a pioneer of JavaScript loaders and all around JavaScript badass.  He recently did...

  • By
    Unicode JavaScript Variables and Functions

    We all get a kick out of unicode symbols, as we all saw in my Unicode CSS Classes post, and just as we can use them for CSS classes, we can use them for JavaScript variables and functions as well!  Let's say you want...

  • By
    JS Objects: De”construct”ion

    In part 1 of this article series (which you should totally go read if you haven't yet!), I revisited an idea not original to me: JS doesn't have "inheritance" in the traditional sense, and what it does have is more appropriately labeled "behavior delegation" -- the...

  • By
    JS Objects: Distractions

    In part 1 of this article series, I went into great detail (aka, wordiness) about the differences between what the traditional definition of "inheritance" means and how JS's [[Prototype]] mechanism works. We saw that JS operates oppositely to "inheritance", being better labeled as "behavior delegation". If you haven't read...

  • By
    JS Objects: Inherited a Mess

    year 2013: Haskell people are still writing monad tutorials, JavaScript people are still trying to explain inheritance. — Vyacheslav Egorov (@mraleph) April 12, 2013 As sad a criticism on JS as that quote is, it's quite true. (I have no perspective on Haskell or Monads, so I'm...

  • By
    Create xkcd-Style Comics with Comix

    Everyone loves the epic comic xkcd.  These comics aren't usually masterclasses of artwork but expressions of whit, usually of a tech-related subject.  I've always thought I could eventually create witty comics but never had the illustration skills to bring them to fruition.  Luckily an incredible...

  • By
    Detect Unmatched CSS Selectors with Helium

    One thing I can't stand is extra code.  Whether it's an extra CSS or JavaScript file that's been included by the page, bloated HTML, or unoptimized images, we're making our millions of of desktop and mobile visitors pay for our laziness and mistakes.  A great tool...

  • By
    parseInt and Radix

    Everyone knows that the parseInt function within JavaScript turns your decimal number or string into a rounded integer.  parseInt turns 10.937 into 10, 0.2 into 0, and "someValue" into NaN.  If you use parseInt without a radix, however, you'll receive a warning that no radix has...

  • By
    CSS @supports

    Feature detection via JavaScript is a client side best practice and for all the right reasons, but unfortunately that same functionality hasn't been available within CSS.  What we end up doing is repeating the same properties multiple times with each browser prefix.  Yuck.  Another thing we...

  • By
    Get Pseudo-Element Properties with JavaScript

    CSS pseudo-elements are incredibly useful -- they allow us to create CSS triangles for tooltips and perform a number of other simple tasks while preventing the need for additional HTML elements.  To this point, these pseudo-element CSS properties have been unreachable by JavaScript but now...