It doesn’t make much sense to start learning with outdated solutions. It would be the same as learning engineering with the knowledge that there were 50 years ago. A very clear case is that of var
. Take a modern course to teach how to use var
and not let
/const
doesn’t make much sense. It seems wrong to me. The same applies to callbacks, Promises and async/await. Leaving out these fundamental pieces of modern Javascript would be a major flaw in the course.
There are still other novelties that have made old methods like .classList
and dataset
, ... among others.
I think it makes sense for a course to have progressive complexity, start with simple situations and increase complexity. But in relation to language it would be misleading to "hide" the progress that took so long to arrive.
I would say that what was included in the language should be part of the course. At the same time it should refer to the speed of implementation in browsers (as Ricardo Pontual said) and also refer to future improvements in the final stage of process of Ecmascript.
Is studied SE6 because it is the version supported by all browsers and JS environments. The ES7 is only partially supported by Chrome and Opera.
– Augusto Vasques
@Augustovasques beware of the statement "all browsers" that this is not quite true, and it depends on the version, see here: https://caniuse.com/#search=es6
– Ricardo Pontual
@Ricardopunctual correct, it was presumptuous of me.
– Augusto Vasques