javascript_C3数据类型上
来源:互联网 发布:少女前线一直网络 编辑:程序博客网 时间:2024/06/05 09:04
3.1 typeof 操作符
用法: alert(typeof("Hello")); ==>"string" // 参数为字面量
var message="Hello World!";
alert(typeof(message)); ==>"string" // 参数为变量
alert( typeof 9); ==>"number" // 因为typeof是操作符而不是函数,所以圆括号不是必须的
3.2数据类型
a, Undefined类型
b, Null类型
c, Boolean类型
d, Number类型
e, String 类型
f, Object类型
3.3 Undefined 类型
a、 只有一个值undefined
b、 多用于比较
var message;
alert(message==undefined); ==>true // message 未经初始化默认取得undefined
c、未经声明的变量只能用typeof操作符检测类型,返回undefined值
alert(typeof message2); ==>undefinde
3.4 Null 类型
a、只有一个值:null
b、var car=null; //如果定义的对象将来用于保存指针,应该明确地让该变量保存null值。
alert(typeof car); ===>"object" //null值表示一个空对象指针,返回object
c、因为:undefined值派生自null值
所以:alert(null==undefined); ===>true
3.5 Boolean 类型
a、该类型只有两个字面值:true和false(区分大小写)
b、Boolean()转型函数
(1)用法:var message="Hello World!";
var messageAsBoolean=Boolean(message);
(2) 自动执行Boolean函数
var message1="Hello Javascript";
if(message1){ //此处自动调用了Boolean函数,∵message1非空,∴返回true
alert("Value is true");
}
(3)其他类型转换为Boolean值
3.6 Number类型
3.6.1整数
a、十进制
var intNum=55;
b、八进制(0-7)
var octalNum1=070; // 八进制第一位必须是(0);八进制56
var octalNum2=079; //∵ 字面值超出了范围,被解析为十进制79
c、十六进制(0~9及A~F/a~f)
var hexNum1=0xA; //十六进制10
3.6.2 浮点数值
a、举例: var floatNum1=1.1;
var floatNum1=5.0; //如果浮点数值本身就是一个整数(5.0),那么该值会被转换为整数5。
var floatNum1=.1; //有效但不推荐
b、注意:
∵ 0.1+0.2=0.3 0000000000000004; //浮点数最高精度17位小数。
∴ var a=0.1;
var b=0.2;
alert (a+b==0.3); ===>false
3.6.3 数值范围
ECMAScript能表示的最小数值保存在 Number.MIN_VALUE中------------在大多数浏览器中值为5e-324
ECMAScript能表示的最小数值保存在 Number.MAX_VALUE中------------在大多数浏览器中值为1.7976931348623157e+308
说明:如果超出这个范围则转换为 Infinity或 -Infinity;并且无法继续参与下一次计算。
isFinite()函数 -----用于判断一个数值是不是有穷的,若是返回true,若不是返回false
举例:
var result= Number.MIN_VALUE+ Number.MIN_VALUE;
alert(isFinite(result)); ===>false
3.6.4 NaN
特点1:任何涉及NaN的操作都返回NaN。
特点2:NaN与任何值都不相等,包括自身。
isNaN()函数 ------参数可以是任何类型
举例:
alert(isNaN(NaN)); ===>true
alert(isNaN(10)); ===>false
alert(isNaN("10")); ===>false (可以被转换成数值10)
alert(isNaN(true)); ===> false (布尔值true可以转换为数值1)
alert(isNaN("true")); ====>true (字符串true不可以转换为数值)
说明:isNaN()参数还可以对象
3.6.5 数值转换
Number() ---可用于任何数据类型
parseInt() ---字符串
parseFloat() ---字符串
Number()函数 举例:
alert(Number(true)); ===>1 //true->1; false->0
alert(Number(null)); ===>0
alert(Number(undefined)); ===>NaN
alert(Number("0123")); ===>123 //前导的0被忽略不会转换为其他进制数值。
alert(Number("1.1")); ===>1.1
alert(Number("0xf")); ===>15
alert(Number("")); ===>0
alert(Number("a2b3c4")); ===>NaN
alert(Number(对象)); ===>valueOf()----if(转换结果是NaN)---->toString()--
parseInt()函数举例:
var num1=parseInt("123abc"); //123
var num2=parseInt(""); //0
var num3=parseInt("0xA"); //10
var num4=parseInt(22.5); //22(小数点不.是有效的数字字符)
var num5=parseInt("070"); //56(∵前导的0没有被忽略,∴被转换为八进制)
var num6=parseInt("0xf"); //15(十六进制)
注意:parseInt()函数还有第二个参数(标示:转换为 二进制、八进制、十进制或十六进制) 要明确指定基数
var num7=parseInt("012",8); //10(八进制)
var num8=parseInt("012",16); //18(十六进制)
var num9=parseInt("AF"); //NaN
var num10=parseInt("AF",16); //31
parseFloat() 函数举例
特点1:与parseInt()不同,parseFloat()函数在解析字符串时,字符串中第一个小数点有效,后边的小数点无效。
特点2:与parseInt()另一不同,它始终会忽略字符串前导的0
var fnum1=parseFloat("22.33.46"); //22.33
var fnum2=parseFloat("078"); //78 var fnum3=parseFloat("0xF"); //0(十六进制都返回0)
var fnum4=parseFloat("1289.0"); //1289整数(如果字符串是整数或小数部分为0则返回整数值)
- javascript_C3数据类型上
- javascript_C3数据类型【中】
- javascript_C3数据类型【下】
- 标准数据类型上下限
- MSDN上的数据类型
- [JavaScript]-----数据类型上
- Java数据类型(上)
- python数据类型(上)
- 【04-Redis数据类型(上)】
- python的数据类型(上)
- JavaScript数据类型(上)——基本数据类型
- MSDN上常用数据类型及其范围
- C++ lecture2 数据类型与表达式(上)
- 不同平台上的不同数据类型
- 5.Python的基本数据类型(上)
- js基本概念(上)之数据类型
- C++学习(三) 复合数据类型(上)
- 不同位数机器上各个数据类型的长度
- Cocos2d-x CocosBuilder使用教程(一)HelloCocosBuilder(亲测可行,试了很多个才找到啊)
- Tiled源码分析(四): 插件机制
- thrift的使用介绍
- LDO和DC-DC器件的区别
- 程序人生_我的2014
- javascript_C3数据类型上
- 动态规划问题集锦
- 正则表达式,网页爬虫
- Side Project - CarnaVote
- 字符串问题集锦
- 什么是句柄
- 数学问题集锦
- Channel Allocation(poj 1129 )
- 为什么会有句柄