一、JS数据类型
1.基本数据类型
分为:
(1)数值
(2)字符串
(3)布尔型
通过typeof可以看变量的具体数据类型,例如:
分为:
(1)数组
(2)对象
(3)特殊数字类型:null、undefine
window.alert(aa);//弹出undefine
3.数值类型
(1)整型常量
十六进制以0或0X开头:例如0x8a
八进制必须以0开头:例如0123
十进制:不能以0开头,否则会默认为八进制处理计算。
(2)实型常量
12.32、5E7、4e5等
window.alert(isNaN("abc")); //不是数字返回真
window.alert(isNaN(123)); //是数字返回假
(3)布尔类型true、false
(4)字符串——双引号单引都可以表示字符串
"a book of js" "abc" 'abc'
用 \ 来转义
1.自动转换
2.强制转换
var a = parseInt("123");
var b =parseFloat("123");
//parseInt、parseFloat是系统函数,可以直接使用
++运算符举例:
+=
-=
*=
在逻辑运算中,0、""、false、null、undefined、NaN均表示false
原则:在||中,值为真则会返回第一个不为false的值,全为假则返回最后那个值。
注意:|| 返回的结果不一定是布尔值,有可能是对象(在框架中经常用)
1.基本数据类型
分为:
(1)数值
(2)字符串
(3)布尔型
通过typeof可以看变量的具体数据类型,例如:
<html>
<head>
<script language="javascript">
var v1="abc";
var v2=890;
window.alert("v1是"+typeof v1); //输出变量的类型
window.alert("v2是"+typeof v2);
v1=567; //js是动态语言,变量类型可以随时变化,也是基于别的语言不同的地方
window.alert("v2是"+typeof v2);
</script>
</head>
<body>
</body>
</html>
2.复合类型
分为:
(1)数组
(2)对象
(3)特殊数字类型:null、undefine
var a=null;
window.alert(tt);//报错,未定义
var aa;//没有给值window.alert(aa);//弹出undefine
3.数值类型
(1)整型常量
十六进制以0或0X开头:例如0x8a
八进制必须以0开头:例如0123
十进制:不能以0开头,否则会默认为八进制处理计算。
(2)实型常量
12.32、5E7、4e5等
特殊数值:NaN(not a Number)、Infinity(无穷大)、isNaN(判断某个数值否为数值)、isFinite(无穷大)
var a="abc";
window.alert(parseInt(a)); //abc不是数值,会返回NoN
window.alert(6/0); //返回 Infinity 无穷大
有两个函数可以用于判断NaN、
window.alert(isNaN("abc")); //不是数字返回真
window.alert(isNaN(123)); //是数字返回假
(3)布尔类型true、false
(4)字符串——双引号单引都可以表示字符串
"a book of js" "abc" 'abc'
用 \ 来转义
var a="abcd";
varb='abcdd';
var c="adklad\"skdl\" ";
(5)强制转换类型
1.自动转换
2.强制转换
var a = parseInt("123");
var b =parseFloat("123");
//parseInt、parseFloat是系统函数,可以直接使用
++运算符举例:
vara=56;
var b=++a; //b=++a; <==> [ a=a+1; b=a; ] b=a++; <==> [ b=a; a=a+1; ]
window.alert(b);
window.alert(a);
3.算术运算符
+=
-=
*=
%=
var a=56; var b=90;
a-=34; //a=22;
b%a;
例:
var a=9;
var b='9';<!--结果是ok,比较时不会先转成ASCII码,而是把字符串先转成一个数去比较-->
if(a==b){
window.alert('ok');
}else{
window.alert('no');
}
<html>
<head>
<script language="javascript">
var val=window.prompt("请输入值:");<!--从用户端取用户输入到的值-->
document.write("您的输入是:"+val);<!--此时的val是个字符串,不可直接运算,解决:parseFloat 强制转换-->
</script>
</head>
<body>
</body>
</html>
(6)逻辑表达式
在逻辑运算中,0、""、false、null、undefined、NaN均表示false
原则:在||中,值为真则会返回第一个不为false的值,全为假则返回最后那个值。
注意:|| 返回的结果不一定是布尔值,有可能是对象(在框架中经常用)
var a=4;
var b=90;
var c=a||b;
window.alert(c); //结果为4
var a=0;
var b=" ";
var d=false;
var c=a||d||b;
window.alert(c); //结果为 " "