Whether the company's colleagues or outside programmers friends, most people are not familiar with the advanced application of JavaScript, the existing knowledge architecture will be considered JavaScript is only a scripting language, its role is to do some icing on the page effect, such as form validation and so on. The subconscious also does not use object-oriented thinking to write JavaScript code, and rarely to in-depth understanding of prototype, closures and other concepts. This causes the writing code to be very often bad.
Perhaps the most important thing about JavaScript learning is that JavaScript is not a toy language. JavaScript does more than just add point form validation, so we can look at Gmail and look at Google Maps, and if developers don't have enough respect for JavaScript, it's unlikely that they will be able to write such good web apps.
JavaScript thresholds are low, but low thresholds do not mean easy mastery. To some extent, JavaScript is easy to get started with and its great flexibility makes it difficult to master JavaScript. In plain language, my personal experience is that learning JavaScript is more challenging than learning Java. Most of us are accustomed to the traditional object-oriented approach, to some extent, even think of class, encapsulation, inheritance and other concepts are like Java, C + +, may have never thought of no class, extend, override and other concepts can also be object-oriented. JavaScript's object-oriented has broken the ideological shackles: the world is diverse, all roads lead to Rome. To exaggerate, to delve into JavaScript is more of a mental challenge , to be active in thinking, to broaden your horizons, and even to change your view of the world.
These are not meant to exaggerate the role and difficulty of JavaScript. Everyone will more or less emphasize the knowledge they have learned, but here, I hope I can be very objective to convey a point of view: No matter what language, want to master, it is not easy, if you want to learn a language, you have to respect this language from the ideological, on the basis of respect to learn, It is possible to grasp the essence of the language . In addition to JavaScript, give an example of HTML:
You can often hear the words: HTML is easy, spend a day or two will be. I thought so myself. But with the growth of HTML experience, it slowly feels that HTML can be the hardest for Web front-end development. The 91 elements in the HTML4.01 specification are like the 2,500 characters in the Chinese character, we have read the common words after primary school, but it is not easy to write an excellent article in Chinese characters. HTML is also the case, most of the claims that HTML is very easy to developers, often only stay in the understanding of the body, p, form, table, Div, UL and other labels, for DL, legend, Sub, caption and so on are not uncommon label even do not know. In the case that the commonly-known characters are not fully recognized, it is very easy to declare HTML, really arrogant. (The difficulty of HTML is how to use tags to build a good structure and rich in semantics of code, like writing a composition, can not think that a few words of confidence can be wonderfully.) )
In short, the language without the inferiority of the easy, from the ideological respect of a language, it is possible to control it, otherwise, will always drift away from the professional programmer's palace.
(Note: This article has been published in the 11th issue of programmer magazine)