My point still stands. The problem is with commissioners who don't understand that keeping your software outdated leads only to sub-optimal experience and/or extended development times.
Installing Chrome or Firefox beside IE6 (if they *really* want to use some legacy ActiveX web app) is free, feasible, fast and just a one-time investment for the administrators.
This is why we, as developers, should try to convince them.
"The two latter work with IE6+, which is a big advantage nowadays."
This is why we can't have nice things.
If you're to develop a web application for the modern world, let the users get a browser worth of a web application. Still giving support to IE6 in 2016 is what kept web development back for so long.
Indeed, it's one of the main arguments about the future development of JS promises.
Also, `setTimeout` should be updated to become a promise (alas, won't happen because `setInterval` can't be promisified too).
Would be nice to have a `wake` function that cancels the timeout, rejecting the promise. Something like Angular's $timeout.
But I guess you need at least a bunch of lines for that.
Actually the object spread operator is part of ESNext, so no need to bring JSX up. And it's *so* much better than Object.assign to create immutable objects.
Basically,
const foo = { ...bar };
is equivalent to
const foo = Object.assign({}, bar);
but the former is more compact and readable than the latter.
If you mean that a language is a tool to program a computer so we're safe from using machine code directly, you may be right. But it's not what's commonly intended as a "development tool".
In the case of JavaScript, moreover, the language actually represents our final product, as the code is interpreted and compiled by the client on run-time.
That's the point: React doesn't have a state management layer. Which means you can choose the one that best suits your needs.
But also means that you need to make an additional effort to create a meaningful application. Will you use Redux or MobX? This freedom lessens the reusability potential of your components by a lot. What about the components you wrote just a year ago with Flux in mind?
But it's just one of the drawbacks of React. I won't list another, because the concept is: whatever looks cool now, will always have its flaws, and sooner or later something will come out that will make your current library look like crap.
Today we're all getting shivers when someone mentions "jQuery", but once it was the greatest thing since sliced bread.
There's no definitive JavaScript library. Libraries come and go. Only JavaScript remains.
Actually the object spread operator is part of ESNext, so no need to bring JSX up. And it's *so* much better than Object.assign to create immutable objects. Basically, const foo = { ...bar }; is equivalent to const foo = Object.assign({}, bar); but the former is more compact and readable than the latter.