JavaScript Jems:
The Amazing Parts

Buy Now: from your local Amazon


 218 pages 

Errata: None

    • Language: English
    • ISBN-10: 1871962420
    • ISBN-13: 978-1871962420
    • Product Dimensions: 7.5 x 0.5 x 9.2 inches 

Whether you are a professional programmer. student or enthusiast, JavaScript is likely to be a language you use on an everyday basis. It is widely regarded as the language of the web, but despite having “Script” in its name it is far more than just a scripting language and it has nothing to do with Java – you can see that its misrepresentation starts early!

Whatever you call it and whatever you use it for, this book is a "meditation" on the features that make JavaScript stand apart from other languages and make it special in terms of having admirable qualities. Each Jem is intended to be an enjoyable read for any JavaScript programmer showing the language in a new light. These are referred to as “Jems”. It’s not a word you will find in the dictionary but it is used in the same sense as its homophone “Gem” as “something prized for its beauty and value”. Here we have a collection of twenty jems about features that have their advantages and disadvantages over their counterparts in other languages.

JavaScript Jems has been written for everyone who encounters JavaScript – not just its aficionados but also its detractors. It looks at how JavaScript does things differently from the perspective of how its differences can be exploited and put to good use.


  • Jem 0 Why JavaScript Is A Jem
  • Jem 1 JavaScript Is Classless
  • Jem 2 The Inheritance Tax
  • Jem 3 Functions Are Objects
  • Jem 4 Objects, Functions And this
  • Jem 5 Every Object Is An Anonymous Singleton
  • Jem 6 Objects Have Value
  • Jem 7 Numbers And Other Values
  • Jem 8 Truthy And Falsey
  • Jem 9 The Comma
  • Jem 10 Code As Data
  • Jem 11 Lambda Expressions
  • Jem 12 Fluent Interfaces
  • Jem 13 Hoisting, Scope And Lifetime
  • Jem 14 Amazing Async
  • Jem 15 The Revealing Constructor Pattern
  • Jem 16 Functional And Not Quite Functional
  • Jem 17 Immutability
  • Jem 18 Functional Approach To Iteration
  • Jem 19 Metaprogramming - The Proxy

About the Author 

Mike James is editor of, an online magazine written by programmers for programmers. His programming career spans several generations of computer technology and he is a polyglot familiar with many programming languages. His books for the I Programmer Library include Programmer's Guide to Kotlin and Programmer's Python: Everything is an Object . His most recent book is The Programmer’s Guide To Theory, which sets out to present the fundamental ideas of computer science in an informal and yet informative way.

Buy Now: from your local Amazon