JavaScript 1.2 数据类型
1.JavaScript拥有动态类型,就是说可以用var定义各种类型的变量。
如:var x=1/true/”Bill”;
注:但是对于已经定义的变量:如var x=1;
最好不再赋值其他类型,如x=”Bill”;
虽然,这样有效,但不推荐。
2.JavaScript拥有5种简单数据(基本)类型(Number String Boolean Undefined Null)和1种复杂数据类型(Object)。
3.数值Number
①可以十进制,八进制,十六进制。如:
var num=45; //十进制
var num=070; //八进制,以0开头,之后0-7。
var num=0xaf;//十六进制,以0x开头,之后0-f(小大写都行)。
注:八进制在严格模式下无效,且超长0-7,0-f会出现错误。如09被解析为9。
②可以是浮点数
var num=10.0; //保存为10
var num=1.23e1; //1.23*10=12.3
var num=123e-2; //123*0.01=1.23
注:浮点数的范围,由浏览器决定,一般5e-324 ~ 1.7976e308
注:浮点数表示法不准确,var x=0.3,y=0.3;但x+y≠0.6。因为计算机二进制计算,只有类似0.5,0.25才准确
③ NaN非数值,类似”blue”这样的就是NaN,且参与NaN计算的结果都是NaN。
4.字符串String
①用单引号或双引号,例如:
var answer="He is called 'Bill'";
var answer='He is called "Bill"';
②可以使用加法,例如:
var lang=”Java”;
lang=lang+”Script”; //结果:lang=”JavaScript”;
var num=123;
num=num+””; //结果:num=”123”;
5.布尔数Boolean,例如:
var message=true/false; //True和False是错误写法
其他数据类型转化为布尔数,如下;
数据类型 |
转化为true的值 |
转化为false的值 |
String |
非空字符串 |
“”(空字符串) |
Number |
非零数值(包括无穷大) |
0和NaN |
Object |
任何对象 |
null(空指针) |
6.Undefined类型
声明但未初始化值时,其值为undefined。
7.Null空指针,一般用于定义空对象,用法:
var car=null;
······
中间可能car=new object();或car=某对象
······
if(car!=null) //看car是否定义了对象。
8.数组。
定义方法一:
var cars=new Array();
cars[0]=”Volvo”;
cars[0]=”BMW”;
方法二:
var cars=new Array(“Volvo”,”BMW”);
方法三:
var cars=[“Volvo”,”BMW”];
9.数据类型的检测typeof
结果:
undefined:未定义
boolean:布尔值
string:字符串
number:数值
object:对象或null,null被认为是空指针
function:函数
例如:
var message = "sfawed";
alert(typeof message); //string