Pretty much all mature languages are defined by a specification, and compilers or interpreters attempt to follow the standard defined in that specification. But very rarely do they succeed, unless the standard is defined by the author of the language.
You can find the C++ 2003 standard, the C# 4 specification, the Java 7 specification and many more online. Many of these have ECMA or ISO standardisation numbers. These are just organisations with which you can register a standard and make it more official.
Ruby has historically done things a little differently, having an executable set of tests as a specification. So, if you want to write an interpreter and call it standard Ruby, you just had to create an interpreter that passed all of those tests. But even Ruby is likely to become a more formal specification eventually.
V8 was fast. It set a whole new market standard. It made everything else look poor.
And, through various antitrust cases against Microsoft, IE was losing market share. Suddenly, it was in Microsoft's interest to support standardisation. We're not there yet, but it's on the right track.
ECMA-262 is just the standard definition, like ECMA-334 is the standard definition for C#. ECMAScript was the only name that all the interested parties could agree on, back in '99, when ECMA-262 was written.