javascript基本数据类型
2011-11-17 15:25
330 查看
ECAMScript中有5种简单的数据类型(也称为基本数据类型):Undefined,Null,Boolean,Number,String和1种复杂数据类型Object。
数据类型虽然简单,但是会经常会发生一些意想不到的结果。
数据类型虽然简单,但是会经常会发生一些意想不到的结果。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" > <head> <title>数据类型</title> <script type="text/javascript"> //Undefined类型 function basicUndefined(){ var message;//未初始化,默认值是undefined alert(message == undefined);//返回false alert(typeof message);//undefined message=123; alert(typeof message);//number typeof用来检测给定变量的数据类型 } //Null类型 function basicNull(){ var car=null;//null值表示一个空对象指针,所有用typeof检测null时会返回object的原因 alert(car);//null alert(car != null)//判断,false alert(typeof car);//object alert(null == undefined);//true ECMA-262规定他们的相等性测试 } //Boolean类型 //Object 任何对象返回true,null返回false //undefined 返回false function basicBoolean(){ var message="" if(Boolean(message))//对于String类型,任何非空字符串会返回true, null,""等会返回false { alert(message); alert(Boolean(message)); } var number=145; if(Boolean(number)){ //对应Number类型,任何非零字符串(包括无穷大)返回true,0和NaN返回false alert(Boolean(number)); alert(number); } } //Number类型 function basicNumber(){ var a=0.1; var b=0.2; if(a+b==0.3){ alert(" you get 0.3"); }else{ alert("you get "+(a+b)); } alert(Number.MAX_VALUE);//js保存的最大数值 alert(Number.MIN_VALUE);//js保存的最小数值 alert(isFinite(Number.MAX_VALUE+Number.MIN_VALUE));//isFinite()函数用来判断是不是位于最大值和最小值之间 //数值转换 Number(),parseInt(),parseFloat() //parseInt()函数转换时,它会从第一个非空格朝气,如果第一个字符串不是数字字符或者负号,则返回NaN //isNaN 不是数值 //parseFloat()与parseInt()的区别是它始终会忽略前导0 // alert(parseFloat("0985.3"));//985.3 // alert("12345sdf562="+parseInt("12345sdf562"));//1234 // alert("s12345sdf562="+parseInt("s12345sdf562"));//NaN // alert("s12345sdf562="+Number("s12345sdf562"));//NaN // alert("sd22.35.3="+parseFloat("sd22.35.3"));//NaN // alert("22.35.3sd="+parseFloat("22.35.3"));//22.35 // alert(Number(""));// 0 // alert(Number(true));//1 // alert(parseInt(""));//NaN // alert("070nihao="+parseInt("070nihao"));//56 // alert("070="+parseInt("070"));//56 } //String类型 //字符串特点:ECMAScript中的字符串是不可变的,要改变某个变了保存的字符串,首先要销毁原来的字符串,然后再用另一个新值填充该变量。 function basicString(){ //转换字符串用toString()方法 var num=10; alert(num.toString());//"10" alert(num.toString(2));//表示以二进制格式返回数值的字符串,还可以是八进制,十六进制等 "1010" //alert(null.toString());//null和undefined没有toString()方法 alert(String(null)); //null String()可以将任何类型的值转换为字符串 } //Object类型 可以用valueOf()或toString()方法获取对象方法的值 function basicObject(){ var o={ valueOf:function(){return -1;} }; alert(o+5); } //创建object实例的两种方式,第一种通过new操作符后跟Object构造函数如:var person=new Object();person.name="hello"; //第二种方式是使用对象字面量表示如:var person={ name:"hello",age:22}; function displayInfo(args){ var output=""; if(typeof args.name=="string"){ output+="Name: "+args.name+"\n"; } if(typeof args.age=="number"){ output+="Age: "+args.age+"\n"; } alert(output); } </script> </head> <body> <input type="button" value="Undefined" onclick="basicUndefined()"/> <input type="button" value="Null" onclick="basicNull();" /> <input type="button" value="Boolean" onclick="basicBoolean();" /> <input type="button" value="Number" onclick="basicNumber();" /> <input type="button" value="String" onclick="basicString();" /> <input type="button" value="Object" onclick="basicObject();" /> <input type="button" value="调用一" onclick="displayInfo({name:'alice'})" /> <input type="button" value="调用二" onclick="displayInfo({name:'alice',age:29})" /> </body> </html>
相关文章推荐
- [你可能忘记的JavaScript]( 二)数据类型、基本概念
- JavaScript学习笔记一 - 基本语法,数据类型、变量
- JavaScript基本数据类型及其转换规则
- JavaScript基本概念(三)--- 数据类型
- JavaScript基本数据类型及值类型和引用类型
- Javascript的基本数据类型
- javascript基本数据类型和typeof
- 读书笔记 JavaScript高级程序设计 第三章 基本概念-数据类型
- 为什么 JavaScript 中基本数据类型拥有 toString 之类方法?
- javascript的5种基本数据类型和1种复杂数据类型
- JavaScript学习笔记之二基本数据类型
- JavaScript 基本数据类型 与类型检测
- Javascript 语言基础1(入门、script标签、注释、变量、调试办法、基本数据类型)
- javascript基本数据类型和转换
- 零基础入门-javaScript学习笔记之从基本数据类型学起
- javascript新建对象及基本数据类型
- JavaScript基本数据类型及值类型和引用类型
- Javascript基本概念之数据类型
- JavaScript 中的基本数据类型 数组 循环
- JavaScript 基础(1)ECMAScript(基础语法)——语法、数据类型、基本运算和逻辑运算