二 javascript基础语法
(一)JavaScript 数据类型
*****************************************************************
不同的编程语言往往有不同的数据分类,与C和Java等面向对象语言不同的是,JavaScript变量不需要明确的数据类型声明,在第一次对变量赋值的时候会根据数据值自动确定数据类型。这也是JavaScript简单易用的原因之一,作为初学者往往会在变量类型的转换上遇到问题,JavaScript就简化了数据的类型,数据类型之间的转换也可以按照规则自动执行。 实际上JavaScript中除null和undefined外的数据类型都已经封装为对象。
*****************************************************************
*数据类型分类: 基础型:如number,string,boolean
特殊型:如Null,Undefined
组合型: 如Array,Object
*数字类型:不区分整型数值和浮点型数值
所有数字都采用64位浮点格式存储,相当于Java和C语言中的double格式
*字符串类型
JavaScript中无论字符还是字符串都是用String格式来存储。
字符串常量是由单引号或双引号括起来的一串字符,单引号内可以包含双引号,双引号内也可以包含单引号,例如:"can‘t" , ’document.write("hello")’ 。
在客户端JavaScript程序设计中,JavaScript代码中常含有HTML代码串,HTML代码中也常含有JavaScript代码,和JavaScript一样,HTML也使用单引号或双引号进行界定字符串,通常的做法是对HTML采用一种引号方式,对JavaScript则采用另外一种。
例如:<input type="button" onclick="alert(‘hello‘)">
如果需要在单引号界定的字符串中使用撇号( ‘ ),那么字符串中的单引号必须使用( \‘ ),同样也适用双引号的情况。
字符串变量一旦赋值就会根据值的类型自动成为相应的数据类型变量,可以通过对象的方式调用对象的属性和方法比如:
var aa="javascript";alert(aa.length);alert(aa.substr(0,4));//将返回 10 和 "Java" 。
*Null,Undefined
Null在程序中代表变量没有值或者不是一个对象
Undefined代表变量的值尚未指定或者对象属性根本不存在
范例代码:
<script language="javascript"> //测试null、空字符串、undefined、boolean类型的关系 var aa=null; var bb=""; var cc=undefined; alert("判断null与空字串是否相等"); alert(aa==bb); //返回false alert("判断null与undefined是否相等"); alert(aa==cc); //返回 true,但是其含义不相同 alert("判断null与false是否相等"); alert(aa==false); //返回 false alert("判断!null与true是否相等"); alert(!aa==true); //返回 true </script>
*类型转换
JavaScript属于松散类型的程序语言
变量在声明的时候并不需要指定数据类型
变量只有在赋值的时候才会确定数据类型
表达式中包含不同类型数据则在计算过程中会强制进行类别转换
具体如:数字+字符串==字符串;数字+布尔==0/1+数字计算; 字符串+布尔==字符串+true/false
*强制类型转换函数
函数parseInt:强制转换成整数 例如parseInt("6.12")=6
函数parseFloat: 强制转换成浮点数 例如parseFloat("6.12")=6.12
函数eval:将字符串强制转换为表达式并返回结果 例如eval("1+1")=2,eval("1<2")=true
*类型查询函数typeof :
查询数值当前类型 (string / number / boolean / object )
例如typeof("test"+3)="string",typeof(null)="object"