js中基本型別以及 和 說明

2021-10-13 21:29:03 字數 4049 閱讀 9156

1、js資料型別型別

(1)五種基本型別分別為:

string型別:字串型別

number 型別:數值型別(數值和 nan)

boolean型別:布林型別 只有true和false兩個值。

null:空

undefined:未定義

(2)一種複雜資料型別

object型別:物件型別

2、用typeof操作符檢測給定變數的資料型別

undefined–未定義這個值

boolean–布林型別值(true false)

number–數值型別

string–字串

object–物件或者是null

function–函式方法

舉例說明:

var a=

123;

var b=

'123'

; var c=true;

var d=null;

var e;

var f=

console.

log(

typeof a)

;//輸出 number

console.

log(

typeof b)

;//輸出 string

console.

log(

typeof c)

;//輸出boolean

console.

log(

typeof d)

;//輸出object

console.

log(

typeof e)

;//輸出undefined

console.

log(

typeof f)

;//輸出object

console.

log(

typeof g)

;//沒有宣告的變數也輸出undefined

3、每個型別詳細說明

(1)undefined型別

a、只宣告了變數並沒有賦值即沒有初始化資料

var a;

console.

log(

typeof a)

;//輸出undefined

b、對於沒有宣告的變數進行typeof也會返回undefined型別。

console.

log(

typeof a)

;//輸出undefined

(2)null型別

null表示空物件指標,也是為什麼用typeof檢測會返回物件型別。

(3)boolean型別

布林型別只有兩個值:true 和false (true不一定是1,false不一定是0。注意布林型別區分大小寫,true和false 以及其他大小寫混合形式都不是boolean型別。

各種資料型別轉換成布林型別

資料型別

轉換成true

轉換成false

string

任何非空的字串

『 』 , 『』 『』(空字串)

number

任何非0數字(包括無窮大)

0和nana

boolean

true

false

object

任何非空物件

null

undefined

n/a(不適用)

undefined

例子:

var a =

'hello';if

(a)

(4)number型別

十進位制數值,正常使用var =12 ; //十進位制12八進位制數值(0-7)數值前面必須加上0 例如:var a=070; //八進位制56十六進製制,數值前面必須加上0x 例如:var a =0xa; //表示十六進製制的10

var a=

1.1

var d =

.1//有效但是不推薦

特例:

var a =1. //小數點後面沒有數值,自動解析成整數1

var b =1.0 //整數會被解析成1

b、數值範圍

由於記憶體限制es能夠取的最大值儲存在number.max_value中 這個值是

1.797693134823157e+308。最小值存在number.min_value中,這個值是5e-324。

nan非數值表示特殊的數值,表示乙個本來要返回數值的運算元為返回數值的情況。nan和任何數值都不相等,包括其本身。

nan==nan //false
isnan()函式判斷是否不是數值

例子;isnan(nan) //true

isnan(10) //true

isnan(『10』) //false

isnan(『hello』) //false

isnan(true) //false

4、 == 和 ===區別。

(1)、 == 比較

1)如果兩個值型別相同,數值也相同即相等;

2)如果兩個值型別不同,也有可能相等,需根據以下規則進行型別轉換在比較:

a、如果乙個是null,乙個是undefined,那麼相等

b、如果乙個是字串,乙個是數值,把字串轉換成數值之後再進行比較

c、特殊:nan和nan 永遠不相等

例子:

console.

log(1==

'1')

;// true 字串轉換成數字

console.

log(

1== true)

;// true; //布林轉換成數字

null == undefined // true, null 和undefined和其他資料型別比較都是false

console.

log(false ==

'0')

;// true布林值轉數字,字串也轉成數字,然後進行比較

console.

log(==)

;// false 物件和物件比較比較的是位址

console.

log(

== true)

;// false 物件先轉成字串,再轉數字,布林值也轉成數字,在比較這兩個數字

console.

log(

== false)

;// true

console.

log(nan == nan)

;// nan和nan 永遠不相等

(2)===絕對相等

1)如果型別不同,就一定不相等

2)如果兩個都是數值,並且是同乙個值,那麼相等;如果其中至少乙個是nan,那麼不相等。(判斷乙個值是否是nan,只能使用isnan( )

來判斷)

3)如果兩個都是字串,每個位置的字元都一樣,那麼相等,否則不相等。

4)如果兩個值都是true,或是false,那麼相等

5)如果兩個值都引用同乙個物件或是函式,那麼相等,否則不相等 6)如果兩個值都是null,或是undefined,那麼相等

js中的基本型別和引用型別

基本資料型別 按值訪問,可操作儲存在變數中的實際的值。基本型別值指的是簡單的資料段。基本資料型別有這六種 undefined null string number boolean symbol es6 引用型別 當複製儲存著物件的某個變數時,操作的是物件的引用,但在為物件新增屬性時,操作的是實際的物...

js中基本型別和引用型別理解

一 基本型別有6種。普通基本型別 null undefined symbol 特殊基本型別 object boolean number 二 引用型別。object array regexp date function。三 兩者的區別 引用型別值可以新增屬性和方法,而基本型別值不可以。1 基本型別。基...

js基本型別

es5共有5種基本型別,分別為number,string,null,undefined,boolean,es6新增了symbol.console.log typeof undefined 輸出為undefined console.log typeof null 輸出為object console.l...