Data Structures and Algorithms with JavaScript (http://amzn.to/2vDDbHQ) is a really excellent book, even if you're not using JavaScript for anything (I wasn't when I first read it, and still found it immensely helpful).
I'm currently reading "Data structures and Algorithms with Javascript" and I had a WTF! moment when I got to page 9 and read "...Javascript does not have a block scope..."
Meaning this piece of code works! Blimey!
for(var i=0; i<=10; i++){
// do nothing
}
// access 'i' out of for loop
console.log("i = " + i); // i = 11