深入理解JavaScript-JavaScript 是什么

简介: 深入理解JavaScript-JavaScript 是什么

Brendan Eich 花了 10 天时间,设计完成的一门语言。它是个大杂烩,参考了多个语言,例如:


  • 基本语法:借鉴 C 语言和 Java 语言
  • 数据结构:借鉴 Java 语言,包括将值分成原始值和对象两大类
  • 函数的用法:借鉴 Scheme 语言和 Awk 语言,将函数当作第一等公民,并引入闭包
  • 原型继承模型:借鉴 Self 语言(Smalltalk 的一种变种)
  • 正则表达式:借鉴 Perl 语言
  • 字符串和数组处理:借鉴 Python 语言


与此同时,它是一门动态、弱类型的编程语言,非常适合面向对象和函数式的编程风格

动态语言,与之对应的是静态语言,静态语言在编译时变量的数据类型就确定的;而动态语言则是在运行时确定数据类型

强类型与弱类型,强类型语言一旦变量的类型被确定,就不能被转化,而弱类型的变量类型由应用上下文确定


特点


基于原型继承,即每个对象拥有一个原型对象,对象又以其原型为模板,从原型继承方法和属性。原型对象也是对象,也拥有原型,并从它的原型继承方法和属性,如此类型,形成原型链。我们会在后文对原型、继承分别进行详细介绍


函数是一等公民,不仅能像对象一样使用,还拥有函数传值、作为返回值返回。我们亦在后文介绍


函数作用域,函数作用域为词法作用域,可形成闭包,我们会在后文继续


由什么组成


JavaScript = ECMAScript + 文档对象模型(DOM)+  浏览器对象模型(BOM)

ECMAScript:语言本身,由语法、类型、语句、关键字、保留字、操作符、全局对象组成


文档对象模型(DOM):操作 HTML 的 API,名字又多又长,可查文档——MDN

浏览器对象模型(BOM):操作 浏览器的 API,如 Window、Screen、Location、History、Navigator、弹出框、Timing、Cookies


ECMAScript 版本



时间点 版本
1997.7 ECMAScript 1.0发布
1998.6 ECMAScript 2.0发布
1999.12 ECMAScript 3.0发布
2007.10 ECMAScript 4.0草案发布,发生分歧
2008.7 改善一部分4.0功能,发布ECMAScript 3.1
2009.12 ECMAScript 5.0正式发布
2011.6 ECMAScript 5.1版发布
2013.12 ECMAScript 6 草案发布
2015.6 ECMAScript 6 正式发布,并且更名为“ECMAScript 2015”


自此之后,往后每年发版一个版本,在那年发版就带上年份,如 2022年发布,称为”ECMAScript 2022“,2023年发布”ECMAScript 2023“


参考资料



[1] JavaScript 语言的历史: https://wangdoc.com/javascript/basic/history.html


相关文章
|
4月前
|
JavaScript 前端开发 安全
从0开始学习JavaScript--初识JavaScript
JavaScript最初由Netscape的Brendan Eich设计,最初将其脚本语言命名为LiveScript,后来Netscape在与Sun合作之后将其改名为JavaScript。JavaScript最初受Java启发而开始设计的,目的之一就是“看上去像Java”,因此语法上有类似之处,一些名称和命名规范也借自Java,但JavaScript的主要设计原则源自Self和Scheme。JavaScript与Java名称上的近似,是当时Netscape为了营销考虑与Sun微系统达成协议的结果。微软同时期也推出了JScript来迎战JavaScript的脚本语言。
从0开始学习JavaScript--初识JavaScript
|
4月前
|
存储 JavaScript 前端开发
从0开始学习JavaScript--JavaScript中的对象
JavaScript中的对象是一种重要的数据结构,它不仅是语言的基石,还提供了丰富的功能和灵活性。本文将深入研究JavaScript对象的创建、属性访问、方法定义,以及实际应用中的技巧,通过丰富的示例代码,帮助读者更全面地了解和应用这一核心概念。
|
4月前
|
JSON 前端开发 JavaScript
从0开始学习JavaScript--JavaScript基础
JavaScript作为一门前端编程语言,在现代web开发中扮演着不可替代的角色。它不仅为网页增添了动态和交互性,而且随着Node.js的崛起,也在服务器端开发中占据了重要地位。在本章节中,我们将探讨JavaScript的作用、重要性以及与其他前端语言的关系。
从0开始学习JavaScript--JavaScript基础
|
4月前
|
JavaScript 前端开发 Java
javaScript(一):javaScript基础知识
JavaScript是一种常用的脚本语言,通常用于为网页添加动态功能和交互性。它是一种解释性语言,可以直接在网页的HTML代码中嵌入,并由浏览器解释执行。JavaScript广泛用于网页开发,可以用于验证表单输入、创建动态效果、操作网页元素、处理用户事件等。
47 2
|
4月前
|
缓存 JavaScript 前端开发
从0开始学习JavaScript--JavaScript中的集合类
JavaScript中的集合类是处理数据的关键,涵盖了数组、Set、Map等多种数据结构。本文将深入研究这些集合类的创建、操作,以及实际应用场景,并通过丰富的示例代码,帮助大家更全面地了解和应用这些概念。
|
JavaScript 前端开发 开发者
深入理解JavaScript-JavaScript 中的始皇
深入理解JavaScript-JavaScript 中的始皇
99 0
深入理解JavaScript-JavaScript 中的始皇
|
Web App开发 JavaScript 前端开发
深入理解JavaScript-JavaScript 由什么组成
深入理解JavaScript-JavaScript 由什么组成
89 0
深入理解JavaScript-JavaScript 由什么组成
|
存储 缓存 开发框架
JavaScript入门【JavaScript专题1】
JavaScript入门 从今天开始就与大家一起学习JavaScript了 在本系列教程中,您将学习如何制作 JavaScript 驱动的网页。
139 0
|
JavaScript 前端开发 Java
JavaScript之路(2)JavaScript的对象
1.JavaScript的对象有哪些呢,javascript中的所有事物都是对象:字符串、数字、日期、数组等,类似于java中,即是对象,对象是拥有属性与方法的数据。
867 0