Web服务应用开发(基于J2EE)JavaScript学习

JavaScript--HBuilderX编写

综合实例

在这里插入图片描述
在这里插入图片描述
代码:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
代码:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
代码:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
代码:
在这里插入图片描述

1JavaScript概述

1.1JavaScript简介

JavaScript最初由Netscape公司的Brendan Eich(布兰登﹒艾奇)设计,最初命名为LiveScript,是一种动态、弱类型、基于原型的语言。后来,Netscape与Sun公司进行合作,将LiveScript改名为JavaScript。
JavaScript是一种基于对象和事件驱动并具有相对安全性的客户端脚本语言。被广泛应用于各种客户端Web程序尤其是HTML开发中,能给HTML网页添加动态功能,响应用户各种操作,实现诸如欢迎信息、数字日历、跑马灯,显示浏览器停留时间等特殊效果,提高网页的可观性。

1.2基本语法

< script type=“text/javascript [src=“外部JS文件”]>js语句块;</ script>	
< script language=“javascript [src=“外部JS文件”]>js语句块;</ script>	

1.3JavaScript放置的位置

JavaScript代码放置的位置: (1)头部;(2)主体;(3)单独的js文件;(4)直接在事件处理代码中。
JavaScript程序本身不能独立存在,它是依附于HTML代码,经浏览器解释执行。
可将JavaScript函数写成一个独立的js文件,在HTML文档中引用该js文件,引用时必须使用src属性。JavaScript文件的扩展名为*.js。格式如下:

 < script type=“text/javascript src=“外部JS文件”></ script>

注:此时在< script></ script>标记之间的所有JS语句都被忽略,不会执行。

1.3.1JavaScript放置-头部

在这里插入图片描述
在这里插入图片描述
注:JS脚本插入在头部时,通常需要定义为函数格式,格式:
function 函数名(参数1,参数2,…,参数n){函数体语句;}

1.3.2JavaScript放置-主体

在这里插入图片描述
注:JS脚本插入在主体时,JavaScript语句能够被立即执行。也可以定义成函数,但必须引用才能执行。

1.3.3JavaScript放置-外部JS

在这里插入图片描述
在这里插入图片描述
注:外部JS文件需要引用到HTML文件中才能被执行。编写外部JS文件时不需要使用< script></ script>标记。

1.3.4JavaScript放置-事件处理代码

在这里插入图片描述
在这里插入图片描述
注:JS代码直接放置在事件处理的代码中,可以直接运行。也可以加上“javascript:alert(‘信息’);”

2JavaScript程序

JavaScript程序由语句、语句块、函数、对象、方法、属性等构成,通过顺序、分支和循环三种基本程序控制结构来进行编程。

2.1语句和语句块

JavaScript语句是发送给浏览器的命令,这些命令的作用是告诉浏览器要做的事情。
alert(“这是告警消息框!”); //弹出告警消息框
JavaScript语句可以分批组合起来形成语句块,语句块以左花括号“{”开始,以右花括号“}”束。
{var s=0;document.write(“S的值=”+s);} //赋值,并输出到页面

2.2代码

JavaScript代码是由若干条语句或语句块构成的执行体。

2.3消息对话框

JavaScript中的消息对话框分为告警框、确认框和提示框。

2.3.1警告框

 alert (message) ;
 注:确定按钮必须响应,否则屏蔽一切操作。告警信息为纯文本信息或字符串,不能含有HTML标记。

2.3.2确认框

  var yn=confirm (message); 
  注:确认按钮的返回值,类型为逻辑值,确定true,取消false。

2.3.3提示框

 var s1=prompt (text, defaultText);
 注:选择“确定”返回输入的值,选择“取消”返回null。

2.3.4JavaScript注释

JavaScript注释:单行注释和多行注释。
单行注释:使用“//”作为注释标记,可以单独一行或跟在代码末尾,放在同一行中,“//”后为注释内容部分。
多行注释:以“/* ”标记开始,以“*/”标记结束,两个标记之间所有的内容都是注释文本。
使用注释防止代码执行-----屏蔽某些语句行的执行。

3标识符和变量

在任何一种编程语言中,实际编程时都要使用变量以存储常用的数据。所谓变量,顾名思义,就是在运行期间其值可以通过程序改变的量。
为了便于变量的使用,实际使用时需要给变量加以命名,变量的名字则称为标识符。

3.1命名规范

3.1.1标识符

   标识符是计算机语言中用来表示变量名、函数名等的有效字符序列,简单来说,标识符就是一个名字,JavaScript关于标识符的规定如下:

(1)必须使用字母或者下划线和$开始。
(2)必须使用英文字母、数字、下划线组成,不能出现空格或制表符。
(3)不能使用JavaScript关键字与JavaScript保留字。
(4)不能使用JavaScript语言内部的单词,比如Infinity,NaN,undefined等。
(5)大小写敏感,如name和Name是不同的两个标识符。

3.1.2关键字

关键字是JavaScript中已经被赋予特定意义的一些单词,关键字不能作为标识符来使用。

在这里插入图片描述

3.1.3保留字

   JavaScript中除了关键字以外,还有一些用于未来扩展时使用的保留字,保留字同样不能用于标识符的定义。 

在这里插入图片描述

3.2数据类型

数据类型是每一种计算机语言中的重要基础,JavaScript中的数据类型可分为字符型、数值型、布尔型、Null、Undefined和对象六种类型。

3.2.1字符型

   字符型数据又称为字符串,由若干个字符组成,并且用单引号或双引号封装起来,如“你好!”、‘你好!’、“学习‘语言’”。

在使用字符串的过程中,需要注意单引号、双引号必须成对使用相互包含,但不能交叉。
如:“学习不是一件‘容易”的事件’(×,交叉错误)。

3.2.2数值型

JavaScript中最基本的数据类型之一,分为整型、浮点型、内部常量以及特殊值。
整型数值即整数,例如100、-3500、0等都是整数。整数表示方法有十进制表示、八进制和十六进制的方式表示。

使用0打头的整数是八进制整数,如017,-035等都是合法的八进制整数。
使用0x后0X打头的整数是十六进制整数,如0x16,0X3A89等都是合法的十六进制整数。

3.2.3Boolean(布尔型)

一种只含有true和false这两个值的数据类型,通常来说,布尔型数据表示“真”或“假”。
在实际应用中,布尔型数据常用在关系、逻辑等运算中,运算的结果往往就是true或者false。例如1<2的比较结果是true,而3==4的比较结果是false。此外,布尔型变量还常用在控制结构的语句中,如if语句等。
JavaScript中,通常采用true和false表示布尔型数据,但也可将他们转换为其他类型的数据,例如可将值为true的布尔型数据转换为整数1,而将值为false的布尔型数据转换为整数0。

3.2.4其它类型

4.Null : null,表示空,不是0,0是有值的。
5.Undefined:变量创建后未赋值(数字:NaN;字符串:Undefined;Boolean:false) 。
6.Object:对象也是JS的重要组成部分,如date、window、document等,在后面介绍。
数据类型之间可以通过函数进行转换。
转换函数如下:
Nnumber(value):把值转换成数字(整型或浮点数)
String(value):把值转换成字符串
Boolean(value):把值转换成Boolean类型

3.3变量

变量:可以保存执行时变化的值的名字,称为“变量”,变量是存储信息的容器。
格式: var 变量名 [=初值][,变量名[=初值] …] ;
var作用:声明或创建变量。
具有良好编程习惯的程序员应该“先声明变量再使用”。例如:

  var userName =““ ; 
  var x=0,y=2,str1=“欢迎你学习JS”;  
  var status = true; 
  var a,b,c;
  str_name=“张为民";   //向未声明的变量赋值

3.4转义字符

如果在字符串中涉及到一些特殊字符如“\”、“"”、'”等,这些字符无法直接使用,需要采用转义字符的方式。

在这里插入图片描述

4运算符和表达式

JavaScript运算符主要有:算术运算符、关系运算符、逻辑运算符、赋值运算符、自增自减运算符、逗号运算符和位运算符等。
根据操作数的个数,将运算符分为一元运算符、二元运算符和三元运算符。
由操作数(变量、常量、函数调用等)和运算符结合在一起构成的式子称为“表达式”,最简单的表达式可以是常量名称。
对应的表达式包括:算术表达式、关系表达式、逻辑表达式、赋值表达式、自增、自减表达式、逗号表达式、条件表达式、位表达式。

4.1算术运算符和表达式

算术运算符负责算术运算,用算术运算符和运算对象(操作数)连接起来符合规则的式子,称为算术表达式。

双元运算符(op1 operator op2)
单元运算符(op operator或operator op )

在这里插入图片描述

4.2关系运算符和表达式

在这里插入图片描述
注:=与= =的区别: =是赋值运算符,= =是等于运算符
= = =与! = =:===全等于,不仅判断数值,而且判断类型

在这里插入图片描述

4.3逻辑运算符和表达式

在这里插入图片描述

4.4赋值运算符和表达式

基本语法:

简单赋值运算:<变量> = <变量> operator <表达式>
复合赋值运算:<变量> operator = <表达式>

在这里插入图片描述

4.5位运算符和表达式

位运算符是对二进制表示的整数进行按位操作的运算符。
如果操作数是十进制或者其他进制表示的整数,运算前先将这些整数转换成32位的二进制数字,如果操作数无法转换成32位的二进制数表示,位运算的结果为NaN。
位运算符:&-按位与;~ -按位非;|-按位或;^-按位异或
其中位运算~, NOT 实质上是对数字求负,然后减 1。
在这里插入图片描述

4.6条件运算符和表达式

条件运算符是一个3元运算符,也就是该运算涉及3个操作数。
基本语法:

变量=布尔表达式 ? 真值表达式 : 假值表达式
var variable = boolean_expression ? true_value : false_value; 

4.7其它运算符和表达式

1.逗号运算符(,)

var x=1 , y=2 , z=3;
x=y+z , y=x+z;

2.新建对象运算符(new)

var str1=new String();var stu=new Array();

3.删除运算符(delete):是一个一元运算符,用于删除一个对象的属性或某个数组的元素。

delete array[30],delete object.height

4.类型运算符(typeof)

 typeof(300),typeof("Welcome to You!")

5JavaScript程序控制结构

JavaScript程序设计分为两种:

面向过程程序设计、面向对象程序设计

程序控制结构:

顺序结构、分支结构、循环结构

5.1顺序结构

顺序结构是最常用的一种程序结构,是按照语句出现的顺序,从第一条语句开始一步一步逐条执行,直至最后一条语句。

5.2分支结构

在 JavaScript 中,可以使用下面几种条件语句:

5.2.1if 语句(单条件单分支)

在一个指定的条件成立时执行代码。

5.2.2if…else 语句(单条件双分支)

在指定的条件成立时执行代码,当条件不成立时执行另外的代码。

5.2.3if…else if…else 语句(多条件多分支)

使用这个语句可以选择执行若干块代码中的一个。

5.2.4switch 语句(单条件多分支)

使用这个语句可以选择执行若干块代码中的一个。

switch(变量或表达式) {
case 常量:
  { 语句a; }
    break;
case 常量:
    { 语句f; }
    break; 
   ...
default:
    { 语句n; }
}

5.3循环结构

5.3.1for

for (初始化表达式;判断表达式;循环表达式){
需循环执行的代码 }

5.3.2while

while(表达式) {需执行的代码; }

5.3.3do-while

do{需执行的代码; }while(表达式)

5.3.4for-in

for (变量 in 对象){ 执行代码; }

5.3.5循环嵌套

循环的嵌套:一个循环内又包含着另一个完整的循环结构,称为循环的嵌套。

5.3.6循环中断与继续

break作用:立即结束循环并转到循环后续语句执行。
continue作用:结束本次循环,其后的语句本次不再执行,开始下一次的循环。

6JavaScript函数

6.1全局函数

1.计算表达式的结果函数:eval(字符串表达式)

 返回值:表达式的值或“undefined”。

2.编码函数escape():escape(字符串)

   escape() 函数将参数字符串中的特定字符(ISO-Latin-1 字符集)进行编码,并返回一个编码后的字符串。它可以对空格、标点符号及其他非ASCII字母表的字符进行编码,除了以下字符:“*  @  -  _  +  .  / ”。

3.解码函数:unescape(string)

unescape 函数返回的字符串是 ISO-Latin-1 字符集的字符。参数string包含形如“%xx”的字符的字符串,此处xx为两位十六进制数值。

4.字符型转换成数值型函数:parseFloat(string)
5.字符型转换成数值型函数:parseInt(numbestring , radix);

以“0x”开始-16进制;以“0“开始--8进制;其他--10进制。

6.判断是否是NaN()函数:isNaN(testValue);

 NaN:not a Number  (注意大小写)

6.2常用的对象函数

(1)toString(radix)。将Number型数据转换为字符型数据,并返回指定的基数的结果。其中radix范围2~36,若省略该参数,则使用基数10。
(2)toFixed(n)。将浮点数转换为固定小数点位数的数字。n是整数,设置小数的位数,如果省略了该参数,将用0代替。

(3)字符串查找和提取常用函数
在这里插入图片描述

6.3自定义函数

基本语法:

function functionname(argument1,argument2,..., argumentn){函数体;}

7函数变量的作用域

变量分为局部变量和全局变量。
局部变量是指在函数内部声明的变量,只在一段程序中起作用的变量;全局变量是指在函数之外声明的变量,在整个JavaScript代码中都可起作用的变量,全局变量的生命周期从声明开始,在页面关闭时结束。
局部变量和全局变量可以重名。即在函数体外声明了一个变量,在函数体内再声明一个同名的变量。在函数体内部,局部变量的优先级高于全局变量,即在函数体内,同名的全局变量被隐藏了。
需要注意到是:专用于函数体内部的变量一定要用var关键字声明,否则该变量将被定义成全局变量,如果函数体外部有同名的变量,可能导致该全局变量被修改。

8JavaScript事件概述

事件编程:让用户不仅能够浏览页面中的内容,而且还可以和页面元素进行交互。 
事件-事件是可以被JavaScript侦测到的行为(ACTION)。

在这里插入图片描述

8.1事件类型

8.1.1鼠标单击

单击button、选中checkbox和radio等元素;鼠标进入、悬浮或退出页面的某个热点:例如鼠标停在一个图片上方或者进入table的范围;

8.1.2键盘按键

当按下按键或释放按键时;

8.1.3HTML事件

页面body被加载时;在表单中选取输入框或改变输入框中文本的内容:例如选中或修改了文本框中的内容;

8.1.4突变事件

主要指文档底层元素发生改变时触发的事件,如DomSubtreeModified(DOM子树修改)。

8.2事件句柄

事件句柄 (event handler)
事件句柄是事件发生要进行的操作。onload属性就是我们所说的事件句柄,也称为事件属性。
基本语法 :

<标记 事件句柄=“JavaScript代码”…></标记>

在这里插入图片描述

8.3事件处理

当一个事件发生时,如果需要截获并处理该事件,只需要定义该事件的事件句柄所关联的事件处理代码,具体的处理方式有以下3种:
静态指定:

<HTML标记 ... 事件句柄1="事件处理程序" [事件句柄2 = "事件处理程序" ...]></HTML标记>

动态指定:

<事件主角-对象>.<事件句柄>=<事件处理程序>;

特定对象特定事件的指定:

<script type=“text/javascript”for=“对象” event=“事件”> //事件处理程序代码</ script>

事件处理程序的返回值:在JavaScript中通常事件处理程序不需要有返回值,这时浏览器会按默认方式进行处理;很多情况下需要使用返回值,来判断事件处理程序是否正确进行处理。基本语法:事件句柄=“return 函数名(参数);"

8.4表单事件

Form表单是网页设计是一种重要的与用户进行交互的工具,它用于采集用户输入各类信息。
在这里插入图片描述

8.4.1获得及失去焦点事件

当表单中的元素获得焦点时会触发Focus获得事件,当表单中的元素失去焦点时会触发Blur失去焦点事件。

8.4.2提交及重置事件

表单的Submit事件触发后会将表单中的数据提交到服务器端,Reset事件触发后会将表单中的数据重置为初始值。

8.4.3改变及选择事件

8.5鼠标事件

用户在页面上操作鼠标会触发鼠标事件,如用户单击鼠标左键会触发Click事件,双击鼠标时会触发DblClick事件,移动鼠标会触发鼠标移动事件。
在这里插入图片描述

8.5.1鼠标单击、双击事件

8.5.2鼠标移动事件

鼠标移动事件有:MouseOver事件、MouseOut事件、MouseDown及MouseUp等事件。

8.6键盘事件

在这里插入图片描述
通过 window的event对象的keyCode属性来获取按键代码的值,其中:

回车:13,0~9:48~57;Aa~Zz:65~90; 

使用方法:window.event.keyCode或event.keyCode。

8.7窗口事件

在这里插入图片描述
在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值