11 ms·
This seems like very beginner level JavaScript. Defining Functions, Functions as Objects, Context? All JS fundamental concepts.
by CryoLogic 10y ago
This seems like very beginner level JavaScript. Defining Functions, Functions as Objects, Context? All JS fundamental concepts.
- cocktailpeanuts 10y agoI think now it's all considered basic since JS ecosystem has grown a lot and people take it for granted, but probably back then these were all advanced materials you couldn't find easily.
- minitech 10y agoNo, they were still basic in 2008. (ES3 was published in 1999.) JavaScript hasn’t changed very much as a language; just the tools around, mostly.
- Klathmon 10y agoJavascript hadn't changed much up until the last few years. Now with ES6 (ES2015), ES2016, ES2017, etc... It's beginning to add a not-insignificant amount of features to the core language which at least to me has completely changed how I write it (for the better)
- deleted 10y ago[deleted]
- cocktailpeanuts 10y agoIn 2008 javascript programmers were called "script kiddies" and the language was only starting to get wider adoption. Unless you were already an experienced web programmer back then this was advanced material for most web programmers who only used to use javascript for displaying alerts and cute dynamic features. Speaking from my own experience, I didn't know about all these prototypes and important concepts for a long time and and did fine. I built tons of web apps without knowing these "advanced" features. It was only when I decided to learn the language seriously that I got acquainted with a lot of these features like the prototype concept, object constructors, etc. If you can build pretty advanced production websites without knowing these features I would say these features are advanced. That said, it's a different story now because javascript is an important language. But my point is in 2008 it wasn't. Also this guy created jQuery, if he says it's advanced, it probably was.
- minitech 10y ago> In 2008 javascript programmers were called "script kiddies" Yeah, by pretentious people who thought… > most web programmers who only used to use javascript for displaying alerts and cute dynamic features. … that. I wouldn’t call someone who only knows how to display an alert a “JavaScript programmer” or base what are considered advanced concepts off of them. > Also this guy created jQuery, if he says it's advanced, it probably was. jQuery is a pretty normal library that gained a lot of popularity. It’s not particularly advanced.
- whytaka 10y agoCould you point to more advanced concepts? As a newb, I'm eager to learn.
- irq11 10y agoIf you want to be a good programmer, pick another language, and start there. you will learn more good practices from starting with a modern, full-featured language like python, than trying to work in the the chaotic disaster zone that is javascript. A good programmer can pick up javascript quickly. Other than syntactic and semantic warts, it is not a difficult language to learn.
- g00gler 10y agoI second this. It was so easy to write JavaScript after writing C# and others for awhile. Now I write mostly JavaScript (<3 TypeScript) because it's so easy and fast, but having traditional OOP principals in my head is very helpful. You'll also find many more, much better examples for data structures and algorithms in Java or C#.
- chris_wot 10y agoJava and C# aren't going to give you the same flavour of protypical inheritance that JavaScript has. Perhaps you might try Lisp or scheme: http://www.crockford.com/javascript/little.html http://www.crockford.com/javascript/little.html
- g00gler 10y agoNo, not the same. The general concepts are similar, though. My thinking goes: understanding classic OOP is helpful in learning JavaScript because the high level concepts are the same but in my opinion more obvious and easier to implement in Java/C#. By more obvious, a Java/C# (+ others) program starts with a class and to add functionality you either have to add more methods to that class or implement another class. So to a new programmer "duh, everything is an object and objects are instances of a class". It's kind of hard to convey the same idea to someone in JavaScript when {} is called an object, "xxx" is an object, and to compose a new class, you compose a new function. However, to someone who already understands classes and objects, it's just a new/different way to create classes and objects.
- Cthulhu_ 10y agoI found that very valuable, even years into JS. Not in this particular book, but, Javascript Allongé has a similar approach. It gave me a fresh perspective on the language and functional programming (in JS), as well as re-explain the basics (since you can't have the basics explained enough)
- FrancoDiaz 10y agoBecause of JavaScript's prototypical nature, there are some nuances of the language that many people that have been using JavaScript for a while might not have known. Things like new on functions, context, how prototypes work, etc... Now with ES6/7/Typescript coming along, you're going to have a new generation of JS programmers that won't even realize you can "new up" a function.