İşte bu konuyla ilgili farklı bir görüş. Az ya da çok deneyimden, hiçbir şeyden alıntı yapamam. Herhangi bir JavaScript doğrulayıcısı ve JavaScript ile çalışan herkes size şunu söyleyecektir:
alert("hello World");
geçerli bir JavaScript. Ben de aynı fikirdeyim.
Ancak, bir ECMAScript doğrulayıcısı muhtemelen size bunun geçerli olmadığını söyleyecektir, çünkü alert (), ECMAScript'in bir parçası değildir, ancak Tarayıcılar için JavaScript'in tipik bir özelliğidir. JavaScript'in yalnızca tarayıcı ortamında, fi window.navigator, window.document, WebSocket, navigator.geolocation'da anlamlı olan birçok özelliği vardır. Hatta bazıları bunun JavaScript'in bir parçası olmadığını, HTML5'in bir parçası olduğunu söyleyebilir, ki bu doğru değildir, çünkü HTML5 yalnızca biçimlendirme dili. Ancak, bu şık yeni özelliklere JavaScript'te uygulanmış olsalar bile genellikle HTML5 adı verilir.
JavaScript, sunucu tarafı komut dosyası için de kullanılabilir. O halde tüm coğrafi konum veya medya apileri bir anlam ifade etmiyor. Dolayısıyla, sunucu tarafı komut dosyası için JavaScript, bu tipik tarayıcı özelliklerine sahip olmayan ECMAScript'e çok daha yakın.
Math nesnesinin (örn. Math.sqrt (9)) ECAMScript'in bir parçası olup olmadığını veya ECMAScript'in gerçekten dilin sözdizimini tanımlayıp tanımlamadığını ve herhangi bir işlevsellik oluşturup oluşturmadığını tam olarak anlayamadım. Ancak bir ECMAScript doğrulayıcısı Math.sqrt (9) 'u geçerli ECMAScript olarak kabul ederken, var test = window.document; ECMA doğrulamasında başarısız oldu.
Aşağıdaki bir JavaScript belgesine bağlantı oluştursa da, bence bu, ECMAScript'in yerleşik özellik kümesidir (nesneler ve işlevler): https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference / Global_Objects
Bu yüzden benim görüşüme göre JavaScript tarayıcılara çok yakından bağlıdır, oysa ECMAScript gerçekten sadece çok temel bir işlevsellik setine sahiptir (eğer varsa).