《js高级》chapter3:基本概念

&3.1

js的5种基本数据类型:

1.undefined:未定义
2.null:空对象
3.Boolean:布尔值
4.Number:数值
5.String:字符串

js的复杂数据类型:

6.object:对象

typeof 操作符:

用来检测给定变量的数据类型
返回值除了以上6种,还有一个function

undefined 类型

只有一个值,就是undefined
举个例子:

var message; //这个变量声明了之后没有赋值,默认值为undefined
//下面这个变量被注释掉了,所以并没有声明
// var age
alert(typeof message) //"undefined"
alert(typeof age) //"undefined"

Null 类型

1.Null类型是第二个只有一个值的数据类型,这个值就是null

  1. typeof null结果是object,因为null表示一个空对象指针

var car = null;
typeof(car) //object

3.实际上,undefined值是派生自null值的,因此ECMA-262规定对他们的相等性测试要返回 true

alert(null == undefined) // true

NaN

NaN,即非数值(Not a Number),这个数值用于表示一个本来要返回数值的操作数未返回数值的情况(这样就不会抛出错误了)
NaN有两个特点:

1.NaN/10 ==> NaN

2.alert(NaN == NaN); // false

parseInt与parseFloat

parseInt(参数1,参数2);
参数1:要转换成数值的字符串
参数2:要转换的基数;实际上就是字符串里面数字是按照10进制,还是8进制,还是16进制进行输出
举个例子:

var num = parseInt("070",8) //56
var num = parseInt("070") //70;ECMAScript5 认为是70,按照十进制输出
var num = parseInt('0xAF',16) //175
var num = parseInt('0xAF') //0
var num = parseInt('AF') //NaN
var num = parseInt('AF',16) //175

parseFloat(参数1):
1.parseFloat只解析10进制值,因此他没有第二个参数
2.parseFloat只解析第一个小数点,之后遇到非数字或者第二个小数点,则截止;

var num1 = parseFloat('1234blue') //1234(整数)
var num2 = parseFloat('0xA') //0
var num3 = parseFloat('22.5') //22.5
var num4 = parseFloat(22.34.25gd) //22.34
var num5 = parseFloat(0908.5) //908.5
var num6 = parseFloat('3.125e7') //31250000

你可能感兴趣的:(《js高级》chapter3:基本概念)