ecmascript是解释器。ecmascript是一种由ecma国际通过ecma-262标准化的脚本程序设计语言,是解释器,负责翻译,是js语言核心部分,描述了js语言的语法和基本对象。
本教程操作环境:windows7系统、ecmascript 6版、dell g3电脑。
一个完整的 javascript 实现由以下 3 个不同部分组成:
核心(ecmascript):语言核心部分,描述了该语言的语法和基本对象。
文档对象模型(document object model,dom):网页文档操作标准,描述处理网页内容的方法和接口。
浏览器对象模型(bom):客户端和浏览器窗口操作基础,描述与浏览器进行交互的方法和接口。
ecmascript(es):负责翻译,为js的核心,解释器。
由ecma-262定义的ecmascript是一种在国际认可的标准的脚本语言规范,与web浏览器没有依赖关系。ecma-262标准主要规定了这门语言由以下组成部分:
语法
变量和数据类型
关键字和保留字
操作符
控制语句
对象
2009年ecmascript 5.0版正式发布。在很长一段时间,使用javascript都是按照5.0的标准。2015年ecmascript 6发布正式版本,官方称为ecmascript 2015。ecmascript定义了脚本语言的所有属性、方法和对象。因此抵用web客户端脚本编码时一定要遵循ecmascript标准。
js数据类型5种基本数据类型:undefined、null、boolean、number、string,symbol(es6新增)
1种复杂类型:object
5种引用类型:array,object,function,date,regexp
3种基本包装类型:boolean,number,string
2种单体内置对象:global,math
1、四种方式判断数据类型
typeof
const a = ""console.log(typeof(a)) => string const b = 1console.log(typeof(b)) => number const cconsole.log(typeof(c)) =>undefined const d = []console.log(typeof(d)) => object const e = {}console.log(typeof(e)) =>object const f = nullconsole.log(typeof(f)) =>object //null 作为尚未创建的对象
instanceof
这种方式只适合判断object类型
const arr = [] console.log(arr instanceof array)=> true console.log(null instanceof object) ---> false console.log([function] instanceof object | function) --> true
object.prototype.tostring.call()
这种方式可以将全部的数据类型检测出来 推荐使用。因为tostring是object的原型方法, 而 array function 等都是object的实例。都重写了tostring 方法。返回的是类型的字符串
object.prototype.tostring.call(null) => [object null] object.prototype.tostring.call(math) => [object math] object.prototype.tostring.call(function(){}) => [object function] objdec.prototype.tostring.call(new date) => [object date] object.prototype.tostring.call(symbol()) => [object symbol] object.prototupe.tostring.call(undefined) => [object undefined] object.prototype.tostring.call(123) => [object number] object.prototype.tostring.call(true) => [object boolean] object.prototype.tostring.call('123') => [object string] object.prototype.tostring.call({}) => [object object] object.prototype.tostring.call([]) => [object array]
constructor
判断对象的构造函数。
1. null 是js 原型链的起点,没有构造函数
2. undefined 没有构造函数
3. [].constructor === array ---> true
【相关推荐:javascript学习教程】
以上就是ecmascript是解释器吗的详细内容。
