New features of javascript are part of the language specification?

In General, this question aimed to address the gaps in my head. I never liked the front end, but it is sometimes necessary to write something and sometimes the work is done, and why it works is unclear.
For example, long time ago started to learn HTML. And, as far as I knew, it was all strictly - each tag has a set of attributes that were handled. And then suddenly, it became possible to write any attributes in tags and use them in js.
It was an upgrade standard html or js all that was previously available? I.e. how suddenly javascript was to be able to work with what was not there before? It was the new features of the engine or it's always been, but beautifully implemented only in jQuery?
Same thing now with the react. What is a jsx syntax? Who parses? The same is not in standard javascript? I can only assume that the jsx script raspravitsya some library written in standard javascript and translates it... ie. it has several levels of interpretation? What's going on?
June 26th 19 at 14:18
2 answers
June 26th 19 at 14:20
that jsx script raspravitsya some library written in standard javascript and broadcasts it...

You are absolutely right. The JSX into a regular js objects.

On account of any attribute - cannot say for certain (angular / vue also use custom attributes, but I'm not familiar with how templates are handled similar), just know that data-* is valid in HTML 5, but if you mean "the attributes in jsx", then Yes... there is any, but this is not HTML.
June 26th 19 at 14:22
that jsx script raspravitsya some library written in standard javascript and broadcasts it...

What are you so surprised... Here's a whole zoo of them were before JSX: TypeScript, CoffeeScript, Angular, WebAssembly and they are all from different buffers the data form objects are Plain Old JavaScript Objects. Each of Liba considered in all respects superior to outrageously terrible JavaScript. Only here with each other they are not compatible. They are only compatible with JavaScript.
I almost forgot clojure
WebAssembly in the list. - cortney.Kuhic commented on June 26th 19 at 14:25
why? the binary data stream is different from the text in this context? in the end we get the same objects, which you can use in JS. - Ralph_Cremin commented on June 26th 19 at 14:28
: Yes, I would agree. And what is incompatible TypeScript and Angular? - cortney.Kuhic commented on June 26th 19 at 14:31
: Well, I don't know, maybe the statement is too categorical. Used no TS no Angela. But used in conjunction with Clojure CoffeeScript. Though they do not greatly interfere with each other, but on the organization of the code it was just a headache. Each of these tools is their ideology. when you have to use them together in your head instead of the scenario algorithm, some conflicts of interest... something like this... - Ralph_Cremin commented on June 26th 19 at 14:34
: how TypeScript is a language of the written framework Angular. - cortney.Kuhic commented on June 26th 19 at 14:37
What are you so surprised

I mean, why in interpreted php don't do that, and in interpreted js - it is a common practice?
In PHP make a new framework, and you get a bunch of features, but with php syntax, not a new invented language. - Christiana_Bernhard86 commented on June 26th 19 at 14:40
: what about Smarty? - Ralph_Cremin commented on June 26th 19 at 14:43
: you are right. And trends fly to new tools. Do not have time to embrace them all. Fashion Angelo, vuy went after my world view was a situation where I decided to spend the energy on getting rid of all dependencies, not matching them to each other. - Ralph_Cremin commented on June 26th 19 at 14:46
: similarly, about Smarty, I forgot - Christiana_Bernhard86 commented on June 26th 19 at 14:49

Find more questions by tags JavaScriptHTMLReact