日期:2014-05-16  浏览次数:20369 次

一、JavaScript简史、概述

1、javascript(浏览器脚本语言)简史

? ①、(网景Netscape):Mocha-->LiveScript-->JavaScript-->ECMAScript(被ECMA组织标准化后的名称)。

? ②、(微软):一个是基于BASIC语言的VBScript,另一个是类似于javascript德jscript。

?

2、语言特性

? ?①、动态性:一个javascript对象中所需的属性无需提前申明,在需要时直接赋值即可。

如:var obj = new Object();

obj.name = 'ZhangSan';//无需提前申明Object对象中必须有name属性。

? ?②、弱类型:javascript中,所有类型变量都可用var关键字来声明,javascript不严格区分变量类型。浏览器解释器会自动根据上下文来处理。

如:var str = "aaa";

? ?var data = 12.05;

? ?var obj = new Object();

?

3、javascript应用

①、可以应用于客户端(常见的一种形式,用于开发web应用),

②、可应用于服务器端(较少使用,可以考虑研究基于V8引擎的应用Node.js,Node.js是一套用来编写高性能网络服务器的JavaScript工具包,提供丰富API简化服务器端的网络编程)。

③、其他各种基于javascript独立引擎的扩展应用:可多研究,基于各种javascript独立引擎(比喻:Rhino,SpliderMonkey以及google的V8等)的扩展应用。可自己使用

各种开发语言来应用,也可在本身支持的各种软件中扩展。

如:著名的Adobe reader也支持Javascript扩展,并提供Javascript的API来访问PDF文档,即可以通过Javascript来定制Adobe?Reader的界面以及功能。下面做一个小示例:

? ?首先,将下面的javascript代码保存为一个js文件,如menu.js

?

app.addMenuItem({
cName: "-",
cParent: "View",
cExec: "void(0);"
});
app.addMenuItem({
cName: "Bookmark This Page &5",
cParent: "View",
cExec: "AddBookmark();",
cEnable: "event.rc= (event.target != null);"
});
app.addMenuItem({
cName: "Go To Bookmark &6",
cParent: "View",
cExec: "ShowBookmarks();",
cEnable: "event.rc= (event.target != null);"
});
app.addMenuItem({
cName: "Remove a Bookmark",
cParent: "View",
cExec: "DropBookmark();",
cEnable: "event.rc= (event.target != null);"
});
app.addMenuItem({
cName: "Clear Bookmarks",
cParent: "View",
cExec: "ClearBookmarks();",
cEnable: "event.rc= true;"
});

?

?

然后,将该文件拷贝到Adobe reader安装目录下的Javascripts文件夹中,如:C:\Program Files\Adobe\Reader 10.0\Reader\Javascripts,

随后打开Adobe reader,设置其启用Javascript:编辑-->首选项-->JavaScript,然后选中“启用Acrobat Javascript”、“启用菜单项目JavaScript执行

权限”和“启用全局对象安全性策略”。

最后,重启Adobe reader,可以发现,在其“视图”菜单中多了四个菜单项:Bookmark This Page 5、Go To Bookmark 6、Remove a Bookmark和Clear Bookmarks。

?