javascript语言ES5版本详解(一)
如果大家觉得哪里写的不对可以指出问题,共同学习,共同进步!!!
JavaScript 由 ECMA(欧洲电脑制造商协会)通过 ECMAScript 实现语言的标准化。
ECMAScript 6 也称为 ECMAScript 2015。(也就是大家俗称的ES6)
ECMAScript 7 也称为 ECMAScript 2016。(也就是大家俗称的ES7)
不过今天要讲的是ES5讲讲入门的知识!!!
HTML 定义网页的内容 CSS 规定网页的布局 JavaScript 对网页行为进行编程
ES3(es1999)
添加正则表达式
添加 try/catch
ES5(es2009)
添加 “strict mode”
严格模式 添加 JSON 支持
ES6(es2015)
添加类和模块
ES7(es2016)
增加指数运算符 (**)
增加 Array.prototype.includes
ECMAScript 的一些机能和其他编程语言的类似;特别是 Java,Self,和 Scheme。
ECMAScript 是在宿主环境中执行计算,处理对象的面向对象编程语言。 WEB 浏览器为引入客户端计算能力而提供 ECMAScript 宿主环境。
提供的对象有:windows,menus,pop-ups,dialog boxes,textareas,anchors,frames,history,cookies 及输入 / 输出等等。进一步来说,WEB浏览器中提供的这种宿主环境,它提供了一种方式,使得脚本代码可以去处理诸如改变焦点、页面和图片的加载、卸载、错误和放弃,选择,表单提交和鼠标交互等等事件。
WEB 服务器为了服务端的计算则提供了一个完全不一样的宿主环境,
包括的对象有:requests,clients,files 以及数据锁定和分享的机制。通过浏览器端脚本及服务端脚本的配合使用,在为基于WEB 方式的应用程序提供定制的用户接口时,可以将计算分布到客户端和服务端进行。
每一种支持 ECMAScript 的 WEB 浏览器和服务器都将它们自身的宿主环境作为 ECMAScript 的补充,以使得 ECMAScript 的执行环境变得完整。
ECMAScript 是基于对象的:基本语言和宿主设施都由对象提供,ECMAScript 程序是一组可通信的对象。ECMAScript 对象是属性的集合,每个属性有零个或多个 特性,它确定怎样使用此属性。
重点
属性是持有其他 对象, 原始值 ,函数的容器。
原始值是以下内置类型之一的成员:Undefined,Null,Boolean,Number,String;
对象是剩下的内置类型对象的成员;
函数是可调用对象。方法是通过属性与对象关联的函数。
函数是定义过后可以调用的叫函数而方法确是直接使用的。
ECMAScript 内置对象
全局对象 (global object) ,Object 对象 ,Function 对象 ,Array 对象 ,String 对象
,Boolean 对象 ,Number 对象 ,Math 对象 ,Date 对象 ,RegExp 对象 ,JSON 对象,和 Error
对象: Error ,EvalError ,RangeError ,ReferenceError ,SyntaxError
,TypeError ,URIError 。
内置对象里面都有方法
** ECMAScript 内置运算符**
ECMAScript 运算符包括 一元运算符 ,乘法运算符 ,加法运算符 ,按位移位运算符 ,关系运算符 ,相等运算符 ,二进制位运算符 ,二进制逻辑运算符 ,赋值运算符 ,逗号运算符。
ECMAScript 语法有意设计成与 Java 语法类似。ECMAScript 的语法是松散的,使其能够作为一个易于使用的脚本语言。例如,一个变量不需要有类型声明,属性也不需要与类型关联,定义的函数也不需要声明在函数调用词句的前面。
对象(Object )
ECMAScript 不使用诸如 C++,Smalltalk,Java 中的类。相反,对象可以通过各种方式创建,包括字面符号,或通过 构造器 创建对象然后运行代码初始化其全部或部分属性值,为这些属性分配初始值。每个构造器是一个拥有名为“prototype”的属性的函数。此属性用于实现基于原型的继承 和 共享属性 。构造器通过 new 表达式创建对象:例如,new Date(2009,11) 创建一个新 Date对象。不使用 new 调用一个构造器的结果,依赖构造器本身。例如,Date() 产生一个表示当前日期时间的字符串,而不是一个对象。
每个由构造器创建的对象,都有一个隐式引用 ( 叫做对象的原型 ) 链接到构造器的“prototype”属性值。再者,原型可能有一个非空 (non-null) 隐式引用链接到它自己的原型,以此类推,这叫做 原型链 。当向对象的一个属性提出引用,引用会指向原型链中包含此属性名的第一个对象的此属性。换句话说,首先检查直接提及的对象的同名属性,如果对象包含同名的属性,引用即指向此属性,如果该对象不包含同名的属性,则下一步检查对象的原型;以此类推。
一般情况下基于类的面向对象语言的实例拥有状态,类拥有方法,并且只能继承结构和行为。在 ECMAScript 中,对象拥有状态和方法,并且结构,行为,状态全都可继承。