JavaScript和JScript有什么区别?
时间:2020-03-06 14:44:28 来源:igfitidea点击:
我一直想知道为什么?是JScript和JavaScript之间的区别。
解决方案
JScript是Javascript的Microsoft实现
摘自Wikipedia:http://en.wikipedia.org/wiki/Jscript
JScript is the Microsoft dialect of the ECMAScript scripting language specification. JavaScript (the Netscape/Mozilla implementation of the ECMA specification), JScript, and ECMAScript are very similar languages. In fact the name "JavaScript" is often used to refer to ECMAScript or JScript.
Microsoft为其实现使用名称JScript以避免商标问题(JavaScript是Oracle Corporation的商标)。
JScript是Microsoft对ECMAScript规范的实现。 JavaScript是该规范的Mozilla实现。
根据这篇文章:
- JavaScript是Netscape Communications开发的一种脚本语言,旨在开发客户端和服务器Internet应用程序。 Netscape Navigator旨在解释嵌入到网页中的JavaScript。 JavaScript独立于Sun Microsystem的Java语言。
- Microsoft JScript是Netscape JavaScript的开放式实现。 JScript是一种高性能的脚本语言,旨在为万维网创建活动的在线内容。 JScript允许开发人员链接和自动化Web页面中的各种对象,包括ActiveX控件和Java程序。 Microsoft Internet Explorer旨在解释嵌入到网页中的JScript。
维基百科对此有不同的说法。
通常,JScript是一种ActiveX脚本语言,很可能会被非IE浏览器解释为JavaScript。
真正的ECMAScript只是不同的名称。约翰·雷西格(John Resig)有一个很好的解释。
以下是完整的版本明细:
- IE 6-7支持JScript 5(等效于ECMAScript 3,JavaScript 1.5)
- IE 8支持JScript 6(与ECMAScript 3,JavaScript 1.5等效-比JScript 5修复了更多错误)
- Firefox 1.0支持JavaScript 1.5(等效于ECMAScript 3)
- Firefox 1.5支持JavaScript 1.6(1.5 + Array Extras + E4X + misc。)
- Firefox 2.0支持JavaScript 1.7(1.6 + Generator +迭代器+ let + misc。)
- Firefox 3.0支持JavaScript 1.8(1.7 +生成器表达式+表达式闭包+其他)。
- Firefox的下一版本将支持JavaScript 1.9(1.8 +待定)
- Opera支持的语言等效于ECMAScript 3 + Getters和Setters + misc。
- Safari支持与ECMAScript 3 + Getters和Setters + misc等效的语言。
据我所知,两件事:
- ActiveXObject构造函数
- 成语f(x)= y,大约等于f [x] = y。
Java语言是Netscape的第一语言。
微软对Javascript进行了反向工程,并命名为JScript以避免Sun的商标问题。 (Netscape和Sun当时是合作伙伴,因此这不是一个大问题)
语言是相同的,两者都是事后标准ECMA脚本的方言。
尽管这些语言是相同的,但是由于JScript在Internet Explorer中运行,因此它可以访问浏览器公开的不同对象(例如ActiveXObject)