站长家园(原代码之家)(www.adminjie.com)网站源码,微信源码,游戏源码,商业源码分享平台。
当前位置:网站首页 技术文章 网络编程 正文

ecmascript是解释器吗

时间:2022-01-06 [网络编程]作者:fabuyuan 浏览:4 次

ecmascript是解释器。ecmascript是一种由Ecma国际通过ECMA-262标准化的脚本程序设计语言,是解释器,负责翻译,是js语言核心部分,描述了js语言的语法和基本对象。

ecmascript是解释器吗

本教程操作环境: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 = 1
console.log(typeof(b)) => Number
 
const c
console.log(typeof(c)) =>Undefined
 
const d = []
console.log(typeof(d)) => Object
 
const e = {}
console.log(typeof(e)) =>Object
 
const f = null
console.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是解释器吗的详细内容,更多请关注站长家园其它相关文章!

本文标签:  JavaScriptecmascript解释器

转载请注明来源:ecmascript是解释器吗

本文永久链接地址:https://www.adminjie.com/post/7265.html

免责声明:
本站所发布的一切资源仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。本站信息来自网络,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容。如果您喜欢该程序,请支持正版软件,购买注册,得到更好的正版服务。

附:
二○○二年一月一日《计算机软件保护条例》第十七条规定:为了学习和研究软件内含的设计思想和原理,通过安装、显示、传输或者存储软件等方式使用软件的,可以不经软件著作权人许可,不向其支付报酬!鉴于此,也希望大家按此说明研究软件!

版权声明:
一、本站致力于为软件爱好者提供国内外软件开发技术和软件共享,着力为用户提供优资资源。
二、本站提供的部分源码下载文件为网络共享资源,请于下载后的24小时内删除。如需体验更多乐趣,还请支持正版。
三、我站提供用户下载的所有内容均转自互联网。如有内容侵犯您的版权或其他利益的,若有侵犯你的权益请:提交版权证明文件到邮箱 2225329873#qq.com(#换为@) 站长会进行审查之后,情况属实的会在三个工作日内为您删除。

  • 站长家园(原代码之家)会员升级
  • 最新文章
    • javascript失去焦点的事件是什么

      javascript失去焦点的事件是什么

      在JavaScript中,失去焦点事件是blur()事件,该方法规定当元素失去焦点时发生blur事件,或规定当发生blur事件时运行的函数,语法为“$(sele...

    • ajax默认是同步还是异步

      ajax默认是同步还是异步

      ajax默认是异步提交;AJAX中根据async值的不同分为同步“false”和异步“true”,而默认情况下async值是true(异步提交)。这样做的好处就...

    • ajax怎么将异步请求改为同步

      ajax怎么将异步请求改为同步

      AJAX中根据async值的不同可分为同步和异步,默认情况下async值是true(异步提交);而想将异步改为同步,只需要将async的值设置为false即可。...

    • ajax是干什么的

      ajax是干什么的

      AJAX是一种用于创建快速动态网页的技术,可以用来:1、做局部请求以实现局部刷新(不刷新页面而更新网页);2、在页面加载后从服务器请求数据;3、在页面加载后从服...

    • javascript怎样求1-100的素数

      javascript怎样求1-100的素数

      方法:1、用“for(vari=2;i<=100;i++){for(varj=2;j<i;j++){if(i%j==0){}}”判断能够被整数整...

  • 买服务器送会员
  • 热门文章
  • 买服务器送会员