当前位置:首页 >> 经济学 >> 第四章 常量、变量和表达式

第四章 常量、变量和表达式


第四章 常量、变量和表达式

4.1 常量
JavaScript有三种基本类型的常量: 数值型、字符串型和布尔型。 ? 4.1.1 数值型 一.整数 二.浮点数
?

一.整数
? ?

?

十进制:每位为0~9。如:25,234,998。 八进制:逢8进位,每位为0~7。首位必须是0, 如:0235,表示八进制数的235,即 (235)8=2×82+3×81+5×80=(157)10 十六进制:逢16进位,每位为0~9或A、B、C、 D、E、F。前两位必须是0x或0X。如:0x235, 表示十六进制数的235,即 (235)16=2×162+3×161+5×160=(565)10

二.浮点数
浮点数也就是实数,只能采用十进制,形式有两种: ? 普通形式。由整数部分、小数点和小数部分组成。 如:4.12、0.0、.123、12.0、12.等。(注:在 普通形式中,小数点必须有,而整数部分或小数部 分若是0,则可省略) ? 指数形式。如5.34e5(表示5.34×105)、 312E4(表示312×104)。 e(或E)后面的指数的位数不能大于3,而且必须是 整数,如23e4321和1.2e2.5等都是不合法的。

JavaScript还有三个特殊的数值: ? 正无穷大 ? 负无穷大 ? NaN(Not a Number ),即“非数字”。 表示无意义的数字值。

?

?
? ? ? ? ? ? ? ?

<html> <head> <title>新建网页 1</title> </head> <body> <script language=javascript> alert(1.7977e308); </script> </body> </html>

4.1.2 字符串
?

?

字符串是由0个或多个字符组成的序列,它可以包 括字母、数字、标点符号或其他可显示字符以及特 殊字符,也可包含汉字。 字符串通过在其首尾添加成对的双引号("")或单引 号('')来说明。如: "Hello word!" "a" ?a? "" "'Hi!' I said." '"Hi!" I said.'

使用字符串,注意以下几点: ? 引号必须匹配 ? 空字符串不包含任何字符,即""或''。 ? 通过使用转义字符”\”(即反斜杠字符),可 以在字符串中添加不可显示的特殊字符,或 者防止引号匹配混乱的问题。 如下表:
?

\b \f \n \r \t \? \“ \\

退格 换页 换行 回车符 TAB符号 单引号 双引号 反斜杠

例1,在字符串中使用特殊字符
? ? ? ? ? ? ?

<HTML><HEAD><TITLE>转义字符的使用 </TITLE></HEAD> <BODY> <script language=javascript> document.write("在字符串中,通过转换字符\\, 既可加入单引号\',也可以加入双引号\"。") </script> </BODY> </HTML>

4.1.3 布尔型
布尔型(Boolean)的值也就是逻辑值 ? 它只有两个值:true和false,分别表示逻辑 “真”和逻辑“假”。 ? 当把一个整数用作布尔值时,0表示false, 而非0整数表示true。
?

4.1.4 空值型 ? 空值就是null,定义空的或不存在的引用。 它不等同于空串或0。 ? 4.1.5 未定义值 ? 未定义值就是undefined,表示变量还没有 赋值。 ? null和undefined的比较
?

4.2 变量
所谓变量,就是程序中一个已命名的存储单 元。 ? 两个基本特征: 变量名和变量值。 ? 变量的值可以不断变化;不过,在为变量赋 予新值之前,它会一直保持它原先所存储的 数据。
?

4.2.1 变量取名
给变量起名时要注意以下几点: ? 变量名以字母或下划线(_)开始,其他字符 可以是数字0~9、字母A~Z或a~z、下划线 (_)。不能用空格、+、-、,等符号。 ? 不能使用保留字作为变量名,如var。 ? 变量名区分大小写。如,str与Str代表不同 变量。 ? 命名时要选择易于记忆、有意义的变量名。
?

4.2.2 变量声明
使用var声明变量如: ? var i; ? var name,age;
?

4.2.3 变量赋值
? ?

?

?

使用 = 声明变量时给出初值, 如 var name="张三"; 普通赋值,如: var name; name="李四"; 例2:变量的基本用法和用途,先声明变量并对其 赋值,然后在页面上显示变量的内容。

?
? ?

?
? ? ? ? ? ? ? ? ?

<HTML><HEAD><TITLE>变量的基本用法和用途 </TITLE></HEAD> <BODY> <script language=javascript> var name; //声明变量 name var age; //声明变量 age name="张三"; //把字符串"张三"存储到变量 name 中 age=20; //把整数 20 存储到变量 age 中 document.write(name); /*读取变量name的值,并将它 显示在页面上*/ document.write("的年龄是:"); //在页面上输出 "的年龄是:" document.write(age); /*读取变量age的值,并将它显示 在页面上 */ </script> </BODY> </HTML>

4.2.4 变量类型
变量类型是指变量值所属的数据类型,可以 是数值型、字符串型、布尔型和空值型。 ? JavaScript变量的类型是动态的。例如: var x=1; x="今天天气真好"; x=true;
?

4.2.5 简述变量的作用域
变量的作用域是指变量起作用的范围,在该 范围内可引用该变量。 ? 在介绍函数之前,在示例中使用的都是全局 变量。
?

4.2.6 数组
数组代表了一组被排列的变量,这些变量称 为元素。 ? 数组元素的位置从0开始 ? 数组中的元素相互独立,不同元素的数据类 型可以不同。
? ?

对数组进行赋值和查询

4.3 表达式
?

?
?

?
?

? ?

4.3.1 运算符与表达式 一.运算符 运算符是指定计算操作的一系列符号,也称为操作 符。 运算符用于将一个或几个值进行计算而生成一个新 值,对其进行运算的值称为算子或操作数。 包括8类运算符:算术运算符、逻辑运算符、比较 运算符、字符串运算符、位操作运算符、赋值运算 符、条件运算符和其他运算符。 除了条件运算符是三目运算符以外,其他要么是双 目运算符,要么是单目运算符。

二.表达式
? ? ? ?

表达式是运算符和操作数组合而成的式子。如: 1+2 表达式具有值,这个值是对操作数实施运算符所确定的 运算后产生的结果。 表达式分为算术表达式、字符串表达式、赋值表达式以 及逻辑表达式等。 子表达式: 在表达式a=b+c*d中,c*d、b+c*d、a=b+c*d、 以至于a、b、c、d都可以看作是一个表达式(即子表 达式)。在计算了表达式a=b+c*d之后,作为子表达 式的a、b+c*d和a=b+c*d的值相同。

4.3.2 算术运算符
+,-,*,/,%,++,-? 例3 ,买东西付了$105,税率为0.05,那 么标价是多少?一共又付了多少税钱? ( 提示:付款额=标价*(1+税率) )
?

? ? ? ?

?
? ? ? ? ? ? ? ?

<HTML><HEAD><TITLE>算术运算符示例 </TITLE></HEAD> <BODY> <pre><script language=javascript> var list,rate=0.05,paid=105,tax; // list:标价;rate:税率;paid:付款额;tax:税额 list = paid/(1+rate); //付款额=标价*(1+税率) tax = paid - list; document.writeln("标价=" + list); document.writeln("税钱=" + tax); </script> </pre> </BODY> </HTML>

4.3.3 比较运算符
? ? ? ? ? ?

?

对操作数进行比较,然后返回布尔值 <,<=,>,>=, ==(先进行类型转换再测试是否相等,如 ”10”==10的值为true) ===(不转换类型直接测试是否相等,如 ”10”===10的值为false ) != !== 例4 ,比较运算符的应用

?
? ?

?
? ? ? ? ? ? ? ?

<HTML><HEAD> <META http-equiv="Content-Language" content="zhcn"> <TITLE>比较运算符</TITLE></HEAD> <BODY> <pre><script language=javascript> var a=2,b=3,c="2",result; document.writeln("a=2,b=3,c=\'2\'"); document.writeln(); document.write("a&lt;b = "); result = a<b; document.writeln(result); document.write("a&lt;=b = "); result = a<=b; document.writeln(result); document.write("a&gt;b = "); result = a>b; document.writeln(result); document.write("a&gt;=b = "); result = a>=b; document.writeln(result);

? ? ? ?

?
? ?

?

document.write("a==c = "); result = a==c; document.writeln(result); document.write("a===c = "); result = a===c; document.writeln(result); document.write("a!=c = "); result = a!=c; document.writeln(result); document.write("a!==c = "); result = a!==c; document.writeln(result); </script> </pre> </BODY> </HTML>

4.3.4 逻辑运算符
&&,||,! ? 例5 ,逻辑运算符
?

? ? ? ? ? ? ? ?

?
? ? ? ? ? ?

<html> <head> <title>逻辑运算符</title> </head> <body> <script language=javascript> var x=15; var y=34; if (x+1>=x&&y%x==4) { alert("The sum of x+y<"+x+y); } </script> </body> </html>

4.3.5 字符串运算符
字符串连接运算符(+),将两个字符串接合起 来。 ? 例6 ,字符串运算符。
?

比较运算符(<、<=、>、>=、==、 ===、!=、!==)也可用于两个字符串之间 的比较(比ASCII码),如: ? "ab"=="ab"、"abc"=="abc"、 "a"<"ab" 返回true; ? "ab"<"a" 返回false; ? "xyz">"XYZ"、"xy">"XYZ"返回true;
?

4.3.6 位操作运算符
位操作运算符用于对数值的位(二进制位)进 行操作,例如按位与、按位或、左移、右移 等 ? &,|,^,<<,>>,>>>
?

4.3.7 赋值运算符
基本赋值运算符 = 用于对变量进行赋值。 ? 组合赋值运算符: 其他一些运算符和 = 联合 使用.即=、+=、-=、*=、/=、%=、&= 、!=、^=、<<=、>>=、>>>= ? 例7
?

?
? ? ? ? ? ? ? ?

?
? ? ?

?
? ?

<HTML><HEAD> <TITLE>赋值运算符</TITLE></HEAD> <BODY> <pre><script language=javascript> var a=3,b=2; document.writeln("a=3,b=2"); document.writeln(""); document.write("a+=b = "); a += b; document.writeln(a); document.write("a-=b = "); a -= b; document.writeln(a); document.write("a*=b = "); a *= b; document.writeln(a); document.write("a/=b = "); a /= b; document.writeln(a); document.write("a%=b = "); a %= b; document.writeln(a); </script> </pre> </BODY> </HTML>

4.3.8 条件运算符
条件运算符(?:),如 (score>=60?"合格 ":"不合格") ? 例8
?

? ? ? ? ? ? ? ?

?
? ?

?

<HTML><HEAD> <TITLE>条件运算符</TITLE></HEAD> <BODY> <pre><script language=javascript> var age,status; age = 20; status = (age>=18)?"成人":"小孩"; document.write("小李是" + status +"。"); </script> </pre> </BODY> </HTML>

4.3.9 其他运算符
, typeof void 等 1.逗号运算符 将多个语句捆绑在一起按照一个语句的执行 方式执行,返回最后一个语句的值。 2.typeof运算符 返回一个表示表达式的数据类型的字符串, 有6种返回值: number,string,boolean,object,function 和undefined
?

逗号运算符源代码:
? ? ? ? ? ?

?
? ? ? ?

?
? ?

<html> <head><title>逗号运算符</title></head> <body> <script language=javascript> var a,b,c,d; var x=(a=1,b=2,c=3,d=4); alert("x="+x); alert("a="+a); alert("b="+b); alert("c="+c); alert("d="+d); </script> </body> </html>

typeof运算符源代码:
?

?
? ? ? ? ? ? ? ?

?
? ?

<html> <head><title>typeof运算符</title></head> <body> <script language=javascript> var x=32; var y="this is a string"; alert("x的类型是:"+typeof x); alert("y的类型是:"+typeof y); if (typeof(x)==typeof(y)) alert("x and y are the same kind"); </script> </body> </html>

3.void运算符 定义了没有任何返回值的表达式 ? <html> ? <head> ? <title>void运算符</title> ? <script language=javascript> ? var x,y; ? x=void(y=3); ? alert("x="+x+" y="+y); ? </script> ? </head> ? <body> ? </body> ? </html>

? ? ? ? ?

?
? ?

void运算符比较多用于超链接,为了避免加载无效页面而且不希 望单击超链接文本时不产生任何操作,可以用如下方法: 无效超链接 <html> <head> <title>void运算符</title> </head> <body> <a href="javascript:void(alert('本链接无效!'))">超链接 </a> </body> </html>

4.3.10 运算符的优先级
运算符的优先级确定计算复杂表达式时哪个 运算优先进行。 ? 基本优先策略:“先乘除,后加减”。 ? JavaScript 定义了所有运算符的优先级和 结合性 ? 例9
?

运算符的结合性是指在表达式中连续出现的 几个运算符优先级相同,其运算的优先顺序 由其结合性决定。 ? 左结合: 例如,1+2+5 ? 右结合: 例如,x=y=100
?

4.3.11 表达式中的类型转换
在表达式求值时,通常要求操作数是属于某 种特定的数据类型 ? 如果操作数的数据类型不是运算符所要求的 类型,那么这种情况通常是由于编程人员的 错误设计所引起的。 ? JavaScript允许运算符对不匹配的操作数进 行计算。 ? JavaScript根据运算符和操作数类型进行隐 式类型转换。
?

示例1:100+300、100+"300"、 "100"+300和"100"+"300" ? 示例2:100-300、100-"300"、"100"300和"100"-"300" ? 示例3:true + 100、true + "100"、 true + false、true - false ? 示例4:"a" – 100
?

? ?

控制方法: 对于+运算符,分为两种情况:
? ?

如果有一个操作数为字符串,进行字符串连接运算。 如果两个操作数都不是字符串,进行算术加运算。

?

?

对于其他运算符,如果其操作数的类型不是它们所 要求的操作数类型,JavaScript就把它的值转换 为相应数据类型的值。 使用函数parseInt()和parseFloat()显式转换。 如表达式100+parseInt(“300”)的值为400, parseFloat(“3.14”)+100的值为103.14。

练习
一、判断题 1、在JavaScript中可以用十六进制形式表示 浮点数常量。 2、空字符串也是字符串常量。 3、在定义JavaScript变量时,一定要指出变 量名和值。 4、表达式的类型只取决于运算符,与操作数 无关。 5、如果有定义var a=true,b;那么a||b的结 果为true。
?

二、选择题 1、以下哪个常量值最大? A、80 B、0x65 C、095 D、0115 2、下面四个变量声明语句中,哪个变量的命名正 确? A、var default B、var my_house C、var my dog D、var 2cats 3、表达式”123abc”-”123”的计算结果是 A、”abc” B、0 C、”123abc123” D、 NaN

4、下面的哪一个表达式将返回真? A、(3==3)&&(5<1) B、!(17<=20) C、(3!=3)||(7<2) D、(1==1)||(2<0) 5、下列各种运算符中,()的优先级最高? A、+ B、&& C、== D、*= 6、下面的哪一个表达式将返回假? A、!(3<=1) B、(4>=4)&&(5<=2) C、(“a”==“a”)&&(“c”!=“d”) D、(2<3)||(3<2)

三、编程题 1、随机生成两个小数给变量x和y,然后显 示这两个数中的最大值。 (提示:语句“var x=Math.random();”可 为变量生成一个随机小数;另外,使用条件 运算符“?:”)

2、如果某年的年份值是4的倍数并且不是100的 倍数,或者该年份值是400的倍数,那么这一年 就是闰年。请编制一个页面,该页面显示当天是 否处于闰年。 提示:使用以下语句,可使变量year的值就是当 天所属的年份值。 var today=new Date(); //获取当天日期 var year=today.getFullYear();//获取当天年 份


赞助商链接
更多相关文档:

...)。 A.变量和常量B.数组元素C.表达式D.以上全_答案_百度高考...

正确答案及相关解析 正确答案 D 解析 [解析] 当形参是变量时,相应的实参应是符合要求的数据,可以是常量变量、数组元素、函数调用和表达式。...

浙教版信息技术第四章《VB程序设计初步》word教案

浙教版信息技术第四章《VB程序设计初步》word教案_其它课程_高中教育_教育专区。...直接常量和符号常量 变量说明的规定 数组变量与数组元素 4.2 基本运算和表达式 ...

VB常量、变量、表达式及运算、内部函数练习题(带答案)

VB常量变量表达式及运算、内部函数练习题(带答案)_高等教育_教育专区。VB 程序设计基础练习题(常量变量、内部函数、表达式及运算) 1.下面表达式的值是 False...

VB-数据、表达式与简单程序设计

VB-数据、表达式与简单程序设计 - 第四章数据、表达式与简单程序设计 4.1 VB 程序代码的组织方式 ? 一个 VB 程序由两部分组成: ? 窗体界面设计 ? 程序代码...

常量、变量、函数、表达式、数据类型

常量变量、函数、表达式、数据类型一、 常量 指在程序运行过程中始终保持不变的常数、字符串等; VB 的常量有 两大类:内存常量和自定义常量;内存常量是由系统...

常量、变量、函数与表达式

常量变量、函数与表达式常量常量(constant)是指在程序运行过程中保持不变的量,在 Visual Basic 中,常量一般分 为数值常量与字符串常量两种。 ⑴ 数值常量 ...

常量、变量、表达式

工作项目任务书工作室名称 班级 工作任务 1203 工作项目 姓名常量变量、表达式 1、掌握 VFP 的数据类型 2、掌握常量变量的使用方法 3、掌握运算符与表达式的...

常量、变量、标准函数和表达式

三、教学的重点和难点: 重点:常量、变量和表达式 难点:符号常量,算术表达式中运算符的运算顺序 四、教学过程: 导入新课 学习本章第三节时,我们建立了一个求圆的...

07实验七 VBA常量、变量、函数和表达式的使用

江西财经大学精品课程《数据库应用》实验报告 实验七 VBA 常量变量、函数和表达式的使用学号 实验项目 实验地点 指导教师一、实验要求 1. 实验目的 了解 VBE ...

VB常量变量及表达式练习题

VB常量变量表达式练习题 - XXXX 高级中学 2012 学年第一学期高一信息技术导学案 主备人:XXX 审核人:YYY VB 常量变量表达式练习题 一、判断题 1.ST$、...

更多相关标签:
网站地图

文档资料共享网 nexoncn.com copyright ©right 2010-2020。
文档资料共享网内容来自网络,如有侵犯请联系客服。email:zhit325@126.com