JavaScript has changed a great deal since it was first introduced but many sites still use outdated techniques. There are even lots of JavaScript tutorials on the web that show you how JavaScript should be written so that it can work in Netscape 2 rather than so that it will work in modern browsers. As a result there are many people who are writing what they think is JavaScript but where what they are producing is more suited to the 20th Century than to the 21st.
Beginners should work through all the basic examples prior to moving on to the other examples which cover separate aspects of JavaScript in more detail.
Most of the JavaScript examples here will work in IE5+ (provided you use a deprecated MIME type – otherwise IE9 through 11 only), Opera7+ and all versions of Firefox, Safari, Vivaldi and Chrome. Those commands introduced in ECMAScript5.1 in 2011 have been added (if I have missed any please let me know). Those commands introduced in ECMAScript2015 and ECMAScript2016 are currently being added (there are lots of them for 2015 so it may take some time but then most current browsers do not yet support them all anyway). Where these new commands are not supported by IE8 that information is included in the text – just in case you still have lots of people using that long unsupported browser. So few people using other browsers fail to keep their browser up to date that lack of support in older versions of other browsers should not have any significant affect.
There is a link to jsBin at the bottom right of all the pages. This site provides an easy way to test your JavaScript code online without needing to create an entire web page to run a simple test.