BrendanEich花了10天时间设计了一门语言。是个大杂烩,指的是多种语言,比如:基本语法:借鉴C语言和Java语言数据结构:借鉴Java语言,包括使用函数将值分为两类:原始值和对象:借鉴Scheme语言和Awk语言,将函数视为一等公民,引入闭包原型继承模型:借鉴Self语言(Smalltalk的变体)正则表达式:借鉴Perl语言字符串和数组处理:借鉴了Python语言同时,它是一种动态的弱类型编程语言,非常适合面向对象和函数式编程风格。动态语言对应静态语言。在静态语言中,变量的数据类型是在编译时确定的;而动态语言在运行时确定数据类型强类型和弱类型时,变量的类型一旦在强类型语言中确定,就不能再转换,而弱类型的变量类型由应用上下文。其特点是基于原型继承,即每个对象都有一个原型对象,并且它还以自己的原型为模板,从原型继承方法和属性。原型对象也是一个对象,也有一个原型,从它的原型继承方法和属性,这样一个类型,形成一个原型链。后面我们会详细介绍原型和继承。函数是一等公民。它们不仅可以像对象一样使用,还可以让函数传递值并作为返回值返回。后面我们也会介绍函数作用域。函数作用域是词法作用域,可以形成一个闭包。我们继续补什么JavaScript=ECMAScript+DocumentObjectModel(DOM)+BrowserObjectModel(BOM)ECMAScript:语言本身,由句法、类型、语句、关键字、保留字、运算符和全局对象组成DocumentObject模型(DOM):操作HTML的API,名字多且长,可以查文档——MDN浏览器对象模型(BOM):操作浏览器的API,如Window、Screen、Location、History、Navigator、pop-upbox,Timing,CookiesECMAScript版本时间点版本1997.7ECMAScript1.0发布1998.6ECMAScript2.0发布1999.12ECMAScript3.0发布2007.10ECMAScript4.0草案发布2008.7改进部分4.0功能,发布ECMAScript3.12009.12ECMAScript5.0正式发布2011.12009.12ECMAScript16ECMAScript3.0正式发布ECMAScript16ECMAScript3.0正式发布草案发布2015.6ECMAScript6正式发布,并更名为“ECMAScript2015”。版本,当年发布的版本会带上年份。比如2022年发布,叫做“ECMAScript2022”,2023年发布“ECMAScript2023”。参考《回顾》那么JavaScript到底是什么?我实际上对JavaScript语言的历史感到困惑。系列文章深入理解JavaScript-开篇深入理解JavaScript-什么是JavaScript深入理解JavaScript-JavaScript是由什么组成深入理解JavaScript-万物皆对象在-深入理解JavaScript——new做了什么深入理解JavaScript——Object.——实例eof——找祖宗看懂JavaScript——Function深入理解JavaScript——Scope深入理解JavaScript——this关键字深入理解JavaScript——调用、应用、绑定理解JavaScript——词法环境深入理解JavaScript——深入理解JavaScript—ScopeVSExecutionContext深入理解JavaScript—Closure深入理解JavaScript—防抖与节流深入理解JavaScript—函数式编程深入理解JavaScript—垃圾回收机制—深入理解JavaScript——数组深入理解JavaScript——loopscomehere深入理解JavaScript——字符串
