Also, the fact that very few people code pure javascript, instead choosing frameworks like jquery, goes to show how much people like it!
Also, the fact that very few people code pure javascript, instead choosing frameworks like jquery, goes to show how much people like it!
However, I'd say the use of libraries and frameworks help javascript programmers, for sure, but that doesn't make the language any less of a mess (and in some cases, like jQuery setting "this" to whatever the hell it wants, makes it more of a mess). I can't speak for php, because I've used it far less, but I suspect the same holds true there, too.
You should read it. It IS very short and can be read in one sitting. Then you wouldn't be left to trust the word of others.
[] != []
[] == ![]
{} + [] is 0
[] + {} is "[object Object]"
{} + {} is NaNI'd say most languages are coded in frameworks and not just the "pure" language.
jQuery does nothing to alter the language, so people using it are still coding pure JavaScript. jQuery itself is implemented in pure JavaScript.
----
There does exist variants of JavaScript, such as Paper.js, Protovis and maybe even CoffeScript, but these are not what the majority of JavaScript users use.
JavaScript in the browser has access to the standard JavaScript and DOM libraries. I really don't think that not using any third-party libraries in any language means "you're doing it wrong". Pure JavaScript/DOM can go a very long way (especially in these days of more standard-compliant browsers), just like pure Objective-C & Cocoa or pure C# & .NET.
Finally, while obviously jQuery does not alter the language, it really changed how people approach problems in JavaScript. Code that uses jQuery looks nothing like code that doesn't use it.
Using jQuery for this does not mean that you like or dislike the language. That was the point I was trying to refute.
Animations is of course also not the only problem you can solve by using jQuery as a library every now and then.
----
For what it's worth, I don't think jQuery qualifies as a framework in the definition on Wikipedia ( http://en.wikipedia.org/wiki/Software_framework ), but this is besides the point.
I don't agree to "does nothing to alter the language" though. It changes the way you manipulate DOM across your codebase. When one says 'library', I assume it's something you make calls to to achieve certain functionality. Like an image library or oauth library.
Also, that jquery is implemented in javascript is not relevant in my opinion. Rails is implemented in ruby. Does that make it not-a-framework?
You said: "the fact that very few people code pure javascript (...) goes to show how much people like it!"
I argue that using jQuery does not change the "pure JavaScript"-ness of any code, just like using Rails does not change the "pure Ruby"-ness of any code, just like using libpng does not change the "pure C"-ness of any code. In every case, it's all in one language anyway -- therefore it is pure in that language.
This comment is not intended to be an argument either way. I am just trying to clarify exactly which point of view I have been trying to argue :)