&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
- 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