编程范型 | 事件驱动、函数式、指令式 |
---|---|
設計者 | 创造者布蘭登·艾克及ECMAScript规范的其他关键贡献者 |
发行时间 | 1995年12月4日[1] |
穩定版本 | ECMAScript 2019[2]
( 2019年6月
) |
預覽版本 | ECMAScript 2020
|
型態系統 | 动态类型、鸭子类型 |
文件扩展名 |
|
主要實作產品 | |
V8、JavaScriptCore、SpiderMonkey、Chakra | |
啟發語言 | |
AWK[4]、C、HyperTalk、Java[5]、Lua、Perl、Python、Scheme、Self | |
影響語言 | |
ActionScript、AtScript、CoffeeScript、Dart、JScript .NET、LiveScript、Objective-J、Opa、QML、Raku、TypeScript | |
|
![]() | |
扩展名 | .js |
---|---|
互联网媒体类型 | application/javascript |
统一类型标识 | com.netscape.javascript-source[7] |
格式类型 | 脚本语言 |
JavaScript(通常缩写为JS)是一种高级的、解释型的编程语言[8]。JavaScript是一门基于原型、函数先行的语言[9],是一门多范式的语言,它支持面向对象程式設計,命令式编程,以及函数式编程。它提供语法来操控文本、数组、日期以及正则表达式等,不支持I/O,比如网络、存储和图形等,但这些都可以由它的宿主环境提供支持。它已经由ECMA(欧洲电脑制造商协会)通过ECMAScript实现语言的标准化[8]。它被世界上的绝大多数网站所使用,也被世界主流浏览器(Chrome、IE、Firefox、Safari、Opera)支持。
JavaScript与Java在名字或语法上都有很多相似性,但这两门编程语言从设计之初就有很大的不同,JavaScript的语言设计主要受到了Self(一种基于原型的编程语言)和Scheme(一门函数式编程语言)的影响[9]。在语法结构上它又与C语言有很多相似(例如if条件语句、switch语句、while循环、do-while循环等)[10]。
在客户端,JavaScript在传统意义上被实现为一种解释语言,但在最近,它已经可以被即时编译(JIT)执行。随着最新的HTML5和CSS3语言标准的推行它还可用于游戏、桌面和移动应用程序的开发和在服务器端网络环境运行,如Node.js。
取材自維基百科 - 中文時事百科