一.基本数据类型
1.字符串数据类型
var hello="你好啊"; var hello='你好啊';示例:<script language="javascript"><!-- var hello = "你好啊"; // 使用双引号定义字符串 var name = "Peter"; // 使用单引号定义字符串 alert( hello + name ); // 将两个字符串合在一起显示 --></script> 深入理解字符串--在JavaScript中不区分字符与字符串,字符也被当作字符串处理。常用转义字符\n \t \r \f \' \" \\<script language="javascript"> var str1 = "1,使用回车换行符\n"; // 行尾使用“\n”作回车换行 var str2 = "2,使用回车符\r"; // 行尾使用“\r”回车符 var str3 = "3,使用:\t制表符\n"; // 中间使用一个制表符“\t” var str4 = "4,使用\"双引号\""; // 使用引号“\"” var str = str1 + str2 + str3 + str4; // 将4个字串符连接为了个串用于显示 alert(str); // 在对话框是显示连接后的串str document.write(str);</script> 2.数值型数据--不像其他编程语言那样区分整型、浮点型。<script language="javascript">// 使用16进制数
var i = 0Xa1; // 分别定义两个数字变量,并使用0x和0X作十六进制设置初值 var j = 0xf2; var s = i + j; // 十六进制变量i与j相加 // 输出为十进制 document.write("<li>十六进制数0xa1等于十进制数:" + i + "<br>" ); document.write("<li>十六进制数0xf2等于十进制数:" + j + "<br>" ); document.write("<li>十六进制数0xf2加上0xa1的和为:" + s + "<br>" );// 使用8进制数
var k = 0123; // 分别定义两个数值变量,分别用八进制值设置为初值 var l = 071; var m = k + l; // 两个变量的值相加 // 输出为十进制 document.write("<li>八进制数0123等于十进制数:" + k + "<br>" ); document.write("<li>八进制数071等于十进制数:" + l + "<br>" ); document.write("<li>八进制数0123加上071的和为:" + m + "<br>" ); // 使用10进制 var t1 = 0.1; // 定义十进制小数数字的形式 var t2 = 1.1; var t3 = 2e3; // 使用科学计数法表示数值 var t4 = 2e-3 var t5 = 0.1e2; var t6 = 0.1e-2; // 将各变量的值全部输出 document.write("<li>十进制带小数的形式:" + t1 + "和" + t2 + "<br>" ); document.write("<li>十进制科学记数2e3等于:" + t3 + "<br>" ); document.write("<li>十进制科学记数2e-3等于:" + t4 + "<br>" ); document.write("<li>十进制科学记数0.1e2等于:" + t5 + "<br>" ); document.write("<li>十进制科学记数0.1e-2等于:" + t6 + "<br>" );</script>
3.布尔型数据--布尔型只有真假两个数据类型,真用true,假用false,非0既真,0为假<script language="javascript"><!-- var b1 = true; // 定义布尔型变量b1并赋初始为“真” if( b1 ) // 判断b1的真是否为真,真则执行“{}”中的语句 { document.write("变量b1的值为\"真\"<br>"); } var b2 = false; if( b2 ) { document.write("变量b2的值为\"真\"<br>"); } else { document.write("变量b2的值为\"假\"<br>"); } var b3 = 0.1; // 定义数字类型变量b3并赋予非0值 if( b3 ) // 此处b3被当作布尔型变量,并判断真或假 { document.write("变量b3的值为\"真\"<br>"); } var b4 = -1; // 定义数字类型变量b4并赋予非0值 if( b4 ) // 此处b4被当作布尔型变量,并判断真或假 { document.write("变量b4的值为\"真\"<br>"); } var b5 = 0; // 定义数字类型变量并赋予0值 if( b5 ) // 此处b5被当作布尔型变量,并判断真或假 { document.write("变量b5的值为\"真\"<br>"); } else { document.write("变量b5的值为\"假\"<br>"); }--></script>二.复合数据类型1.常用内置对象--将数据与处理数据的方法捆绑在一起形成一个整体,称为对象。var obj=new Object();obj.toScript();Object:所有对象的基础对象Array:数组对象,封装了数组的操作和属性ActiveXObject:活动空间对象arguments:参数对象,正在调用的函数的参数Boolean:布尔对象,提供同布尔类型等价的功能Date:日期对象,封装了日期相关的操作和属性对象Error:错误对象,保存错误信息Function:函数对象,用于创建函数Global:全局对象,所有的全局函数和全局常量归该类对象所有Math:数学对象,提供基本的数学函数和常量Number:数字对象,代表数值数据类型和提供数值常量的对象String:字符串对象,提供操作的属性的对象2.常用日期对象--date=new Date();date=new Date(val);date=new Date(y,m,d[,h[,min[,sec[,ms]]]]);<script language="javascript"><!-- var cur = new Date(); // 创建当前日期对象cur var years = cur.getYear(); // 从日期对象cur中取得年数 var months = cur.getMonth(); // 取得月数 var days = cur.getDate(); // 取得天数 var hours = cur.getHours(); // 取得小时数 var minutes = cur.getMinutes(); // 取得分钟数 var seconds = cur.getSeconds(); // 取得秒数 // 显示取得的各个时间值 alert( "此时时间是:" + years + "年" + (months+1) + "月" + days + "日" + hours + "时" + minutes + "分" + seconds + "秒" );--></script>getDate()返回对象中本地时间表示的日期getYear()返回对象中本地时间表示的年值getMonth()getDay()getHours()getSeconds()getMinutes()setDate(dateVal)设置对象中的日期值setYear(yearVal)setMonth(monthVal)<script language="javascript"><!-- var dateObj = new Date(); // 创建一个日期对象 dateObj.setYear( 2007); // 设置日期对象的年份 dateObj.setDate( 20 ); // 设置日期对象的日期 dateObj.setMonth( 4 ); // 设置日期对象的月份 // 显示日期对象中的时间 alert( "dateObj中设定的时间为:" + dateObj.getYear() + "年" + dateObj.getMonth() + "月" + dateObj.getDate() + "日" );--></script>3.理解全局对象--全局对象是所有全局方法的拥有者,用来统一管理全局方法,全局方法也指全局函数。不能使用new运算符创建对象实例isNaN(value)判断value是否是NaN,返回一个布尔型parseFloat(string)返回有字符串string转换的到的浮点数parseInt(string)返回有字符串string转换得到的整数<script language="javascript"><!-- var a = NaN; var b = "123"; var c = 123; var d = "1.23"; document.write( "<b>Global对象的isNaN方法</b><br>" ); var ta = isNaN( a ); // 使用Global对象的isNaN()方法测试a的值 document.write( "<li>a的值是否是NaN:" + ta + "<br>" ); var tb = isNaN( b ); // 测试b的值 document.write( "<li>b的值是否是NaN:" + tb + "<br>" ); var tc = isNaN( c ); // 测试c的值 document.write( "<li>c的值是否是NaN:" + tc + "<br>" ); document.write( "<b>Global对象的parseInt方法</b><br>" ); var ib = parseInt( b ); // 使用Global对象的parseInt方法,将字符串“123”解析为数值123 if( ib == c ) { document.write( "<li>b解析为数值:" + ib + "<br>" ); } document.write( "<b>Global对象的parseFloat方法</b><br>" ); var id = parseFloat( d );// 使用Global对象的parseFloat方法将字符串“1.23”解析为数值1.23 if( id == 1.23 ) { document.write( "<li>b解析为数值:" + id + "<br>" ); }--></script>4.常用数学对象--Math.[{属性名|方法名}];PI返回圆周率abs返回数字的绝对值cos返回给定数的余弦值sin返回数的正弦值min返回给定数的最小值max返回给定数的最大值sqrt返回给定数的平方根Tan返回给定数的正切值round返回与给定数最接近的整数值log返回给定数的自然对数pow返回给定数的制定次幂<script language="javascript"><!-- var r = 2; // 定义变量表示半径 var pi = Math.PI; // 从Math对象中读取周期率PI常量 var s = pi*r*r; // 计算面积 alert("半径为2单位的圆面积为:" + s + "单位" ); // 显示圆的面积--></script><script language="javascript"><!-- var r1 = Math.sin( Math.PI/2 ); // 求余弦 document.write("<li>弧度为pi/2的正弦值为:" + r1 + "<br>" ); var r2 = 0-r1; var r3 = Math.abs( r2 ); // 求绝对值 document.write("<li>" + r2 + "的绝对值为:" + r3 + "<br>" );--></script>5.常用字符串对象--String([strVal]);<script language="javascript"><!-- // 诗的内容 var comment = "静夜思李白床前明月光,疑是地上霜。举头望明月,低头思故乡。"; var partial = comment.substring( 0, 3 ); // 取出标题 partial = partial.bold(); // 标题加粗 document.write( "<p align=\"center\">" ); // 输出HTML标签“<p>”,并设置居中对齐 document.write( partial ); // 输出标题 partial = comment.slice( 3, 5 ); // 取出作者 document.write( "<br>" ); // 输出换行标签<br> document.write( partial ); // 输出作者 partial = comment.slice( 5, 17 ); // 取出第一句诗文 partial = partial.fontcolor("gray"); // 设置颜色为gray(灰色) document.write( "<br>" ); // 输出换行标签 document.write( partial ); // 输出诗句 partial = comment.slice( 17, 29 ); // 取出第二句诗文 partial = partial.fontcolor("gray"); // 设置颜色为gray(灰色) document.write( "<br>" ); // 输出换行标签 document.write( partial ); // 输出诗句 document.write( "</p>" ); // 输出HTML标签“<p>”的结束标签--></script>6.掌握数组对象--var a=new Array();var a=new Array(10,20,30,string,40);var a=[10,20,30,string,40];var a=new Array(3);<script language="javascript"><!-- var poets = new Array( "王维", "杜甫", "李白", "白居易" ); // 创建数组 document.write("古代几个大诗人:<br>"); // 输出标题 for( n in poets ) // 逐个输出数组元素 { document.write( "<li>" + poets[n] ); // 输出诗人的名字 }--></script>三.其他数据类型1.使用函数--function TypeName([arg,…]){this.arg=arg;}<script language="javascript"><!-- function Card( owner, rate ) // 定义一车子对象 { this.Owner = owner; // 车主 this.MaxRate = rate; // 极速 } var myCard = new Card( "Sunsir", "400KMpH" ); // 创建一个车子实例 document.write( myCard.Owner + "的车子极速为" + myCard.MaxRate ); // 输出车子的属性--></script>2.空值--null<script language="javascript"><!-- var x = 10; // 定义变量x,并给其赋值10 var y = null; // 定义变量y,并赋一个空值,表示“什么都没有” if( x == null ) // 如果x为空值则 { document.write( "x的值为空<br>" ); } if( y == null ) // 如果y为空则 { document.write( "y的值为空<br>" ); }--></script>3.不确定的类型--undefined<script language="javascript"><!-- var v0 = 1; // 定义一个值为1的变量 var v1 = null; // 定义一个变量,并指定值为null var v2; // 定义一个变量,但不赋任何值 document.write("变量v0的内容为:" + v0 + "<br>" ); // 分别输出v0、v1、和v2的内容 document.write("变量v1的内容为:" + v1 + "<br>" ); document.write("变量v2的内容为:" + v2 + "<br>" ); if( v1 == v2 ) // 测试“null”和“undefined”的相等性 { document.write("\"null\"和\"undefined\"相等<br>" ); } else { document.write("\"null\"和\"undefined\"不相等<br>" ); }--></script>四.数据类型的转换1.Javascript类型转换的规则:Javascript的变量是松散类型的,它可以存储Javascript支持的任何数据类型,其变量的类型可以在运行时被动态改变
2..隐式类型转换
-
在某些情况下,即使我们不提供显示转换,Javascript也会进行自动类型转换,主要情况有:
-
1. 用于检测是否为非数值的函数:isNaN(mix)--isNaN()函数,经测试发现,该函数会尝试将参数值用Number()进行转换,如果结果为“非数值”则返回true,否则返回false。
-
2. 递增递减操作符(包括前置和后置)、一元正负符号操作符--这些操作符适用于任何数据类型的值,针对不同类型的值,该操作符遵循以下规则(经过对比发现,其规则与Number()规则基本相同):
(1) 如果是包含有效数字字符的字符串,先将其转换为数字值(转换规则同Number()),在执行加
减1的操作,字符串变量变为数值变量。
(2) 如果是不包含有效数字字符的字符串,将变量的值设置为NaN,字符串变量变成数值变量。
-
(3) 如果是布尔值false,先将其转换为0再执行加减1的操作,布尔值变量编程数值变量。
-
(4) 如果是布尔值true,先将其转换为1再执行加减1的操作,布尔值变量变成数值变量。
-
(5)如果是浮点数值,执行加减1的操作。
- (6)如果是对象,先调用对象的valueOf()方法,然后对该返回值应用前面的规则。如果结果是NaN,
-
3.加号运算操作符在Javascript也用于字符串连接符,所以加号操作符的规则分两种情况:
如果两个操作值都是数值,其规则为:
-
(1) 如果一个操作数为NaN,则结果为NaN
-
(2) 如果是Infinity+Infinity,结果是Infinity
-
(3) 如果是-Infinity+(-Infinity),结果是-Infinity
-
(4) 如果是Infinity+(-Infinity),结果是NaN
-
(5)如果是+0+(+0),结果为+0
(6) 如果是(-0)+(-0),结果为-0
(7) 如果是(+0)+(-0),结果为+0 -
如果有一个操作值为字符串,则:
(1) 如果两个操作值都是字符串,则将它们拼接起来
(2) 如果只有一个操作值为字符串,则将另外操作值转换为字符串,然后拼接起来
(3) 如果一个操作数是对象、数值或者布尔值,则调用toString()方法取得字符串值,然后再应用前面的字符串规则。对于undefined和null,分别调用String()显式转换为字符串。 可以看出,加法运算中,如果有一个操作值为字符串类型,则将另一个操作值转换为字符串,最后连接起来。
4.乘除、减号运算符、取模运算符
这些操作符针对的是运算,所以他们具有共同性:如果操作值之一不是数值,则被隐式调用Number()函数进行转换。具体每一种运算的详细规则请参考ECMAScript中的定义。
-
5. 逻辑操作符(!、&&、||)
1. 逻辑非(!)操作符首先通过Boolean()函数将它的操作值转换为布尔值,然后求反。 - 2.逻辑与(&&)操作符,如果一个操作值不是布尔值时,遵循以下规则进行转换:
-
(1) 如果第一个操作数经Boolean()转换后为true,则返回第二个操作值,否则返回第一个值(不是
Boolean()转换后的值)
(2)如果有一个操作值为null,返回null 3. 如果有一个操作值为NaN,返回NaN
(3)如果有一个操作值为undefined,返回undefined 逻辑或(||)操作符,
-
3.如果一个操作值不是布尔值,遵循以下规则:
(1) 如果第一个操作值经Boolean()转换后为false,则返回第二个操作值,否则返回第一个操作值
(不是Boolean()转换后的值)
(2)对于undefined、null和NaN的处理规则与逻辑与(&&)相同
-
6. 关系操作符(<, >, <=, >=)
与上述操作符一样,关系操作符的操作值也可以是任意类型的,所以使用非数值类型参与比较时也需要系统进行隐式类型转换:
(1)如果两个操作值都是数值,则进行数值比较
(2)如果两个操作值都是字符串,则比较字符串对应的字符编码值
(3)如果只有一个操作值是数值,则将另一个操作值转换为数值,进行数值比较
(4) 如果一个操作数是对象,则调用valueOf()方法(如果对象没有valueOf()方法则调用toString()
方法),得到的结果按照前面的规则执行比较
(5)如果一个操作值是布尔值,则将其转换为数值,再进行比较
注:NaN是非常特殊的值,它不和任何类型的值相等,包括它自己,同时它与任何类型的值比较大小时都返回false。
7. 相等操作符(==)相等操作符会对操作值进行隐式转换后进行比较:
- <script language="javascript"><!-- var age = prompt("请输入您的年龄:", "0"); // 输入年龄 if( age <= 0 ) // 如果输入的数字小于等于0则视为非法 { alert("您输入的数据不合法!"); } else { alert( "你的年龄为" + age + "岁" ); }--></script>
-
3.显式转换
-
Number(mix)函数,可以将任意类型的参数mix转换为数值类型。其规则为:
(1) 如果是布尔值,true和false分别被转换为1和0
-
(2)如果是数字值,返回本身。
-
(3)如果是null,返回0.
(4) 如果是undefined,返回NaN。
-
(5) 如果是字符串,遵循以下规则:
-
(6)如果字符串中只包含数字,则将其转换为十进制(忽略前导0)
-
如果字符串中包含有效的浮点格式,将其转换为浮点数值(忽略前导0)
-
如果是空字符串,将其转换为0
如果字符串中包含非以上格式,则将其转换为NaN
(7) 如果是对象,则调用对象的valueOf()方法,然后依据前面的规则转换返回的值。如果转换的结果是NaN,则调用对象的toString()方法,再次依照前面的规则转换返回的字符串值。
下表列出了对象的valueOf()的返回值:
-
对象 返回值
-
数组的元素被转换为字符串,这些字符串由逗号分隔,连接在一起。其操作
-
Array 与 Array.toString 和 Array.join 方法相同。
-
Boolean Boolean 值。
-
Date 存储的时间是从 1970 年 1 月 1 日午夜开始计的毫秒数 UTC。
-
Function 函数本身。
-
Number 数字值。
Object 对象本身。这是默认情况。
-
String 字符串值。
parseInt(string, radix)函数,将字符串转换为整数类型的数值。它也有一定的规则:
(1) 忽略字符串前面的空格,直至找到第一个非空字符
-
(2)如果第一个字符不是数字符号或者负号,返回NaN
(3) 如果第一个字符是数字,则继续解析直至字符串解析完毕或者遇到一个非数字符号为止
-
(4)如果上步解析的结果以0开头,则将其当作八进制来解析;如果以0x开头,则将其当作十六进
制来解析
(5)如果指定radix参数,则以radix为基数进行解析
-
parseFloat(string)函数,将字符串转换为浮点数类型的数值。
它的规则与parseInt基本相同,但也有点区别:字符串中第一个小数点符号是有效的,另外parseFloat会忽略所有前导0,如果字符串包含一个可解析为整数的数,则返回整数值而不是浮点数值。
toString(radix)方法。除undefined和null之外的所有类型的值都具有toString()方法,其作用是返回对象的字符串表示。
-
对象 操作
Array 将 Array 的元素转换为字符串。结果字符串由逗号分隔,且连接起来。
-
Boolean 如果 Boolean 值是 true,则返回 “true”。否则,返回 “false”。
-
Date 返回日期的文字表示法。
Error 返回一个包含相关错误信息的字符串。
Function 返回如下格式的字符串,其中 functionname 是被调用 toString 方法函数的名称: function functionname( ) { [native code] }
Number 返回数字的文字表示。 String 返回 String 对象的值。
默认 返回 “[object objectname]”,其中 objectname 是对象类型的名称。
String(mix)函数,将任何类型的值转换为字符串,其规则为:
(1)如果有toString()方法,则调用该方法(不传递radix参数)并返回结果
-
(2) 如果是null,返回”null”
(3) 如果是undefined,返回”undefined”
6、Boolean(mix)函数,将任何类型的值转换为布尔值。 以下值会被转换为false:false、”"、0、NaN、null、undefined,其余任何值都会被转换为true
<script language="javascript"><!-- var priceOfApple = "3元"; // 苹果的价格 var priceOfBanana = "3.5元"; // 香蕉的价格 priceOfApple = parseInt( priceOfApple ); // 解析苹果的价格 var priceOfBanana2 = parseInt( priceOfBanana ); // 解析香蕉的价格 if( ( priceOfApple===3 ) && ( priceOfBanana2 === 3 ) // 检查解析是否成功 && ( parseFloat( priceOfBanana ) ===3.5 ) ) { alert( "苹果的价格:" + priceOfApple // 输出水果的价格 + "\n香蕉的价格的整数部分:" + priceOfBanana2 + "\n香蕉的价格:" + parseFloat( priceOfBanana ) ); } else { alert( "并没有得到预期的转换效果!" ); // 解析失败时输出警告信息 }--></script> -
示例分数---编写一个程序,记录学生的《高等数学》成绩,要求集中输出60-69,70-79,80-89和90-100各个分数段的学生名字
<script language="javascript"><!-- var score = new Array( "王勇", 50, // 分数表 "白露", 60, "杨杨", 76, "李明", 83, "张莉莉", 70, "杨宗楠", 71, "徐霞", 66, "杨玉婷", 93 ); var namesOf_0To59 = ""; // 存储各分数段人学生名字的变量 var namesOf_60To69 = ""; var namesOf_70To79 = ""; var namesOf_80To89 = ""; var namesOf_90To100 = ""; var scoreSum = 0; document.write( "<b>《高等数学》成绩统计表</b><br>" ); // 标题 for( index in score ) { if( index%2==1 )// 如果当前元素索引为奇数,则该元素为分数,其前一个元素即为该分数的学生名字 { // 判断当前分数所在的分数段并将学生名字存入相应变量 if( (score[index]>=0) && (score[index]<=59) ) { namesOf_0To59 += score[index-1] + " "; } if( (score[index]>=60) && (score[index]<=69) ) { namesOf_60To69 += score[index-1] + " "; } if( (score[index]>=70) && (score[index]<=79) ) { namesOf_70To79 += score[index-1] + " "; } if( (score[index]>=80) && (score[index]<=89) ) { namesOf_80To89 += score[index-1] + " "; } if( (score[index]>=90) && (score[index]<=100) ) { namesOf_90To100 += score[index-1] + " "; } scoreSum += score[index]; // 统计分数 } } document.write( "<li>00~59分:" + namesOf_0To59 + "<br>" ); // 分别输出各分数段的学生 document.write( "<li>60~69分:" + namesOf_60To69 + "<br>" ); document.write( "<li>70~79分:" + namesOf_70To79 + "<br>" ); document.write( "<li>80~89分:" + namesOf_80To89 + "<br>" ); document.write( "<li>90~100分:" + namesOf_90To100 + "<br>" ); // 数组元素个数除以2即为人数,总分除以人数即得平均分 document.write( "<li>平均分 :" + scoreSum/(score.length/2) + "<br>" );--></script>示例--处理文本<script language="javascript"><!-- var comment = "采莲南塘秋,莲花过人头;低头弄莲子,莲子清如水。今晚若有采莲人,这儿的莲花也算得“过人头”了;只不见一些流水的影子,是不行的。这令我到底惦着江南了。" var newComment = ""; for( n = 0; n<comment.length; n ++ ) { var curChar = comment.charAt( n ); if( curChar=="莲" ) { newComment += (curChar.bold()).fontcolor("red"); } else { newComment += curChar; } } document.write("<li><b>原文:</b><br>" + comment + "<br>" ); document.write("<li><b>标记“莲”字:</b><br>" + newComment + "<br>" );--></script - 二。JavaScript数据的表示:
-
-
- 整数:由正负号、数字构成,八进制、十进制、十六进制;
- 浮点数:由正负号、数字和小数点构成,常规记数法、科学记数法;
- 逻辑值:true、false
- 字符串值:单引号、双引号
- 空值:null
- 未定义值:根本不存在的对象、已定义但没有赋值的量;
-
- 三。JavaScript常量:
-
-
- 布尔常量:true false
- 整数常量:3721 0007 0xaff(0Xaff)
- 浮点数常量:3.14 .001 3.721e+3 -3.721E-3
- 字符串常量:"你的E-mail地址有误!"
- 含转义字符的字符串常量:
转义字符 意义 \b 退格(Backspace) \f 换页(Form feed) \n 换行(New line) \r 返回(Carriage return) \t 制表符(Tab) \' 单引号(') \" 双引号(") \\ 反斜线(\)
document.write("我爱\'JavaScript\'")
document.write("文件在c:\\windows\\下")
document.write("<pre>未满十八岁\n不得进入!</pre>")
document.write("未满十八岁<br>不得进入!")
document.alert("密码不对\n请重新输入!")
数组常量:
hobby=["听音乐","看电影"]
hobby[0]、hobby[1]
hobby=["听音乐",,"看电影",]
hobby[0]、hobby[1]、hobby[2]、hobby[3]
-
- 四。JavaScript变量:
-
-
- 变量命名规则:
-
- 1.首字符必须是大写或小写的字母或下划线(_)或美元符($);
- 2.后续的字符可以是字母、数字、下划线或美元符;
- 3.变量名称不能是保留字;
- 4.长度是任意;
- 5.区分大小写;
- 6.约定:集中置顶;
使用局部变量;
易于理解;stdId
避免混乱。usrname usrName
声明变量:
- var stdId;
- var name,sex;
- var total=3721;
- var notNull=true;
- var name="李小龙",sex="先生";
- var i=j=0;
stdId = 2004007; 变量作用域:(方式、位置)
- 全局变量:省略var,或在函数外声明
- 局部变量:在函数内声明
- 全局变量可在整个脚本中被使用,可在不同的窗口中相互引用(指定窗口名)
- 例:
<Script>
var langJS = "JavaScript"; //langJS是全局变量
test();function test() {
var langVBS = "VBScript"; //langVBS是局部变量
document.write("<LI>" + langJS);
document.write("<LI>" + langVBS);
}document.write("<LI>" + langJS);
document.write("<LI>" + langVBS);
</Script>