首页 > 代码库 > JavaScript学习笔记————JavaScript的应用环境

JavaScript学习笔记————JavaScript的应用环境


JavaScript的应用环境,主要是宿主环境(host environment)运行期环境构成。其中,宿主环境是指外壳程序(Shell)和Web浏览器等,而运行期环境则是由JavaScript引擎内建的。

 

宿主环境


宿主环境是为了隔离代码、语言与具体的平台而提出的一种设计。一方面我们不能让浏览器拥有一个巨大无比的运行期环境(虚拟机就是拥有特别大的运行期环境的一个平台),另一方面服务器端又需要较强大的环境,由此JavaScript就被设计为“宿主环境”的语言。

 

ECMAScript规范没有对宿主环境提出明确的定义。即没有对它提出标准的输入(stdin)或者输出(stdout)到哪一个具体的对象中。后来,RWC在webAPIs规范中首先提出了“需要一个Window对象”的浏览器环境。由此意味着在RWC或者浏览器端,是以window对象及其中的Document对象来提供输入输出。但“RWC规范下的宿主环境”并不等于“JavaScript规范下的宿主环境”



方法

含义


Alter(sMessage)

显示一个消息文本(字符串),并等待用户一次响应。调用者将忽略响应的返回信息


Write(sText,...)

输出一段文本,多个参数将被连接成单个字符串文本。


WriteIn(sText,...)

(同write)输出一段文本,多个参数被连接成单个字符串文本,并在文本末尾追加一个换行符(\n)


备注:write()与writeIn在浏览器中是Document对象的方法。


外壳程序

外壳程序是宿主的一种。


运行期环境

不同的书对其定义的解释也不一致:

例如《JavaScript权威指南》里,它由JavaScript内核(core)客户端(client)JavaScript两部分来组成;

技术分享

而《JavaScript高级程序设计》中,它又是由核心ECMAscript文档对象模型(DOM)浏览器对象模型(BOM)三部分来组成的。

技术分享

在初始状态下的运行期环境主要包括:

  1. 一个对宿主的约定

  2. 一个引擎内核

  3. 一组对象和API

  4. 一些其他的规范



常见的JavaScript引擎


引擎

应用

语言

备注

SpiderMonkey

Mozilla

C


JavaScriptCore

Safari

C++

基于KDE发布的KJS,由Apple公司支持

Rhino

Java

Java

主要应用于IBM、Sun等的Java平台

JScript

Windows


Windows环境,以及IE

Narcissus


JavaScript

备注*

备注*:Brendan Eich为验证JavaScript语言的自我实现能力而写的一套代码,被称为“JS implemented in JS”



本文出自 “阳光罗诺” 博客,请务必保留此出处http://10479756.blog.51cto.com/10469756/1919595

JavaScript学习笔记————JavaScript的应用环境