一.JavaScript变量定义
1.在js中定义变量,使用var来定义,var可以省略不写;
定义一个变量的语法格式:
var 变量名 = 值;
举例:
<script>
//定义一个整数a,值为20;
var a = 20 ;
//定义一个浮点数变量b,值为3.14;
var b = 3.14 ;
//定义一个字符串变量c,值为"hello",var可以省略不写;
c = "hello" ;
//定义一个字符变量d,值为'A';
var d = 'A' ;
//定义一个布尔变量e,值为true;
var e = true ;
//在浏览器中输出内容使用函数document.write();
//<br/>为换行
document.write("a的值是:" + a) ;
document.write("b的值是:" + b) ;
document.write("c的值是:" + c) ;
document.write("d的值是:" + d) ;
document.write("e的值是:" + e) ;
</script>
输出结果:
a的值是:20
b的值是:3.14
c的值是:hello
d的值是:A
e的值是:true
2.javascript是弱类型语言,它的语法结构不严谨! 可以重复定义变量的,后面的变量的值将前面的变量值覆盖掉
举例:
<script>
//定义一个整数a,值为20
var a = 20 ;
//再次定义a变量,修改值为3.14
var a = 3.14 ;
//在浏览器中输出
document.write("a的值是:" + a + "<br/>") ;
</script>
输出结果:
a的值是:3.14
3.查看js的变量的数据类型,使用一个函数 typeof(变量名)
举例:
<script>
var a = 20 ;
var b = 3.14 ;
var c = "hello" ;
var d = 'A' ;
var e = true ;
document.write("a的值是:"+a+",a的数据类型是:"+typeof(a)+"<br/>") ;
document.write("b的值是:"+b+",b的数据类型是:"+typeof(b)+"<br/>") ;
document.write("c的值是:"+c+",c的数据类型是:"+typeof(c)+"<br/>") ;
document.write("d的值是:"+d+",d的数据类型是:"+typeof(d)+"<br/>") ;
document.write("e的值是:"+e+",e的数据类型是:"+typeof(e)+"<br/>") ;
</script>
输出结果:
a的值是:20,a的数据类型是:number
b的值是:3.14,b的数据类型是:number
c的值是:hello,c的数据类型是:string
d的值是:A,d的数据类型是:string
e的值是:true,e的数据类型是:boolean
这里说明两个问题:
1)无论是整数还是小数,都是number类型
2) 无论是字符串还是字符,都是string类型
4.var可以任意数据类型!
举例:
<script>
var obj = new Object() ;
document.write("obj的值是:" + obj + ",obj的数据类型是:" + typeof(obj)) ;
</script>
输出结果:
obj的值是:[object Object],obj的数据类型是:object
二.JavaScript数据类型划分
1.无论是整数还是小数,都是number类型, ---- js引擎会自动提升为 Number 对象类型
2.无论是字符串还是字符,都是string类型----js引擎会自动提升为 String 对象类型
3.boolean类型 ----js引擎会自动提升为 Boolean 对象类型
4.object类型 (创建一个对象 ) ---- js引擎会自动提升为Object对象类型
在Js中,Object对象代表所有js对象的模板!
5.undefined类型 :未定义类型 (这种没有意义),因为没有赋值!
举例:
<script>
var h ;
document.write("h的值是:" + h + ",h的数据类型是:" + typeof(h)) ;
</script>
输出结果:
h的值是:undefined,h的数据类型是:undefined