认识JavaScript

JavaScript脚本的基本结构

JavaScript是一种描述语言,是一种基于对象(Object)和事件驱动(Event Driven)并具有相对安全性的客户端脚本语言,同时也是一种广泛应用于客户端Web开发的脚本语言。

JavaScript脚本本质上也是一种程序。JavaScript代码放在<script>和</script>之间,嵌入到HTML文档中。

JavaScript脚本不会显示在用户屏幕上的页面中,当Web浏览器在遇到<script>标签时,会按照JavaScript脚本的语法逐行读取语句,并检查其语法,若没有错误,则浏览器解析并执行该语句,直到遇到</script>标签结束。

1.JavaScript脚本的基本结构

<script>
    ......
</script>

2.说明

(1)<script>标签的type和language属性(这里没有使用)已经废弃了,这意味着W3C已经将这个属性标记为在标准的未来版本中不必支持的属性,但还有不少旧脚本仍在使用它。

(2)<script>开始标签,告诉浏览器后面的代码是JavaScript,而不是HTML。</script>结束JavaScript,告诉浏览器后面的代码是HTML。

(3)一个HTML文档中可以有任意多数量的通过<script></script>标签嵌入的JavaScript脚本。

JavaScript脚本的放置位置

JavaScript脚本可以放在HTML文档的两个位置:<head>和</head>标签之间(称为头脚本,header script);<body>和</body>标签之间(称为体脚本,body script)。

一般放在HTML文档的<head>部分,如果你愿意或根据需求也可放在<body>部分。

JavaScript的组成

一个完整的JavaScript由三部分组成:

核心(ECMAScript)

文档对象模型(DOM)

浏览器对象模型(BOM)

1.核心(ECMAScript)

JavaScript的核心ECMAScript描述了该语言的语法和基本对象

ECMAScript是一种由ECMA国际(其前身为欧洲计算机制造商协会,European Computer Manufacturers Association)通过的ECMA-262标准化的脚本程序设计语言。ECMAScript是一种开发的、标准的、被国际上广泛接受的脚本语言规范。

实际上,ECMAScript是一种脚本在语法上和语义上的标准,即是一种脚本语言标准。JavaScript语言就是遵循ECMAScript标准的一种实现。

ECMAScript主要描述一下内容:

  • 语法
  • 类型
  • 语句
  • 关键字
  • 保留字
  • 运算符
  • 对象

2.文档对象模型(DOM)

文档对象模型DOM(Document Object Model)描述了处理网页内容的方法和接口。

DOM是HTML和XML的应用程序接口(API),是一种和平台、语言无关的接口,允许程序和脚本动态访问、更新文档的内容、结构和样式。

DOM由万维网联盟(World Wide Web Consortium,W3C)定义,并建立了DOM标准(W3C DOM)。DOM几乎得到所有浏览器的支持,在实际应用中越来越广泛。

DOM将把整个页面规划成由节点层级构成的文档。HTML或XML页面的每个部分都是一个节点的衍生物。DOM通过创建树来表示文档,从而使开发者对文档的内容和结构具有空前的控制力。通过DOM提供的API,开发人员可以添加、编辑、移动或删除树中任意位置的节点,从而创建一个应用程序。

3.浏览器对象模型(BOM)

浏览器对象模型BOM(Browser Object Model)描述了与浏览器进行交互的方法和接口。

BOM主要处理浏览器窗口和框架,也可以对浏览器窗口进行访问和操作。使用BOM,开发者可以移动窗口、改变状态栏中的文本以及执行其他与页面内容不直接相关的动作。

BOM只是JavaScript的一个部分,目前还没有相关的标准。每种浏览器都有自己的BOM实现。有一些事实上的标准,例如,具有一个窗口对象和一个导航对象,不过每种浏览器可以为这些对象或其他对象定义自己的属性和方法。

JavaScript的可为和不可为

1.JavaScript不是Java

JavaScript的名字中尽管有Java,并且他们的语法类似,但是JavaScript和Java之间并没有太大的关系。

Netscape在其Navigator Web浏览器中添加了一些基本脚本功能时,最初将这种脚本语言称为LiveScript。此时,Java开始大行其道,被认为是计算机行业中下一项伟大的革新。Netscape在Navigator 2中支持运行Java Applet时,将JavaScript和Java是非常不同的编程语言,但这并没有阻止Netcape采用这种市场营销手段。借用Java的声势,Netscape最终得到发展,JavaScript从此变成了因特网的必备组件。

来看两个概念,客户端(client-side)程序和服务器端(server-side)程序。在用户机器上运行的程序称为客户端程序,在服务器上运行的程序称为服务器端程序。

JavaScript主要是用来编写客户端程序的(实际上,也存在服务器端实现的JavaScript版本,如Rhino)。而Java除了可以编写客户端程序Applet外(Applet是一种通过因特网下载并在Web浏览器中运行的小程序),主要用来编写服务器端的应用程序。此外,JavaScript是基于对象的语言,而Java是面向对象的语言。

2.JavaScript可以做什么

JavaScript可以做很多事情,其主要作用体现在以下三个方面:

(1)客户端表单验证

JavaScript可以对用户输入的表单元素信息在客户端进行验证,从而减轻了网站服务器端的压力。这是JavaScript最常见的应用。

(2)使网页更具有交互性

JavaScript能够实现Web页面与用户的交互。JavaScript不仅能够在客户端和用户交互,也可以将用户输入的表单信息传入服务器,或者接受服务器端的信息进行再处理,实现与服务器端交互。

(3)增强用户体验

JavaScript能够获取页面中的元素,来动态改变页面的内容,实现动态效果和页面特效。给站点的用户提供更好、更令人兴奋的体验。

3.JavaScript不可以做什么

JavaScript是一种客户端语言。设计它的目的是在用户的机器上而不是在服务器上执行任务。由于安全原因,JavaScript有一些固有的限制。

JavaScript不允许写服务器上的文件。尽管写服务器上的文件在许多方面是很方便的,但是JavaScript不允许这样做。需要用服务器上的一个程序处理和存储这些数据。

JavaScript不能关闭不是由它自己打开的窗口。这是为了避免一个站点关闭其他站点的窗口,从而独占浏览器。

JavaScript不能从另一个服务器已经打开的网页中读取信息。换句话说,网页不能读取已经打开的其他窗口中的信息。

JavaScript的特点

(1)基于对象的编程语言

JavaScript是一种基于对象的编程语言,而不能说是面向对象的编程语言。在JavaScript中有许多内部对象,用户也可以创建并使用自己的对象,但其对象特征不像Java语言中那样纯正。

JavaScript对象具有属性、方法,通过点号语法来访问。

(2)解释执行的脚本语言

JavaScript是在解释器中一行一行地解释执行的,其在执行过程中不需要编译成与机器相关的二进制代码。

解释器主要有Web浏览器,但不限于Web浏览器,Netscaoe公司的Web服务器和Microsoft公司的IIS服务器、Windows Scripting Host(Windows脚本宿主)中都提供了JavaScript解释器。

(3)简单性

JavaScript语法和Java语法类似,学习JavaScript十分简单。JavaScript是一种弱类型语言,其变量并没有严格的数据类型,省去了许多麻烦。

(4)动态性

JavaScript是基于事件驱动的。所谓“事件驱动”,就是指有一定的操作,就能触发某些动作。例如,鼠标单击、页面加载完毕等都是事件。当事件产生后,浏览器会查找产生事件的节点有没有绑定相应的事件处理代码,因此,可以对不同事件创建相应的事件处理程序,从而实现和用户的动态交互。

(5)动态无关性

JavaScript代码是在浏览器中解释执行的,只要有支持JavaScript的浏览器,无论在什么平台上,代码都能得到执行。开发人员在编写JavaScript脚本时无需考虑具体平台的限制。

(6)安全性

JavaScript脚本是安全的。它不允许访问本地硬盘,不能将数据存入服务器上,不允许对网络文档进行修改和删除,只能通过浏览器实现信息浏览或动态交互,从而有效地防止数据丢失和破坏。

(7)浏览器兼容性

不同的浏览器或相同浏览器的不同版本对JavaScript的支持不同,因此,相同的JavaScript代码在不同的浏览器中运行,展现出的效果会有差异,即存在浏览器的兼容性问题。

网页中引用JavaScript的方式

网页中引用JavaScript的方式有三种,分别是内嵌JS代码、引用外部JS文件和在HTML标签中。

1.内嵌JS代码

内嵌JS代码是将JavaScript脚本直接写在HTML页面中。

2.利用外部JS文件

外部JS文件是将JavaScript代码单独保存为一个后缀名为.js的文件,在HTML页面中通过<script>的src属性引用这个文件。

外部JS文件可以被多个HTML页面共享,增强了代码的重用性,大大减少了页面上的代码量,并且使站点更容易维护。当需要对JS脚本进行修改时,只需修改.js文件,所有引用这个.js文件的HTML页面就都会自动修改其运行效果。

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

  • 2
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值