javascript 資料型別

2021-09-12 16:34:14 字數 1959 閱讀 2337

(1) 基本資料型別:string,number(flaot,精度17位小數,integer,integer.max_value獲取整形最大值),boolean,null,undefined, typeof後依次對應string number,boolean,object,undefined,儲存在記憶體中的棧裡,執行環境銷毀後基本型別的值銷毀

(2) 引用資料型別:包含陣列、函式,{}, typeof後依次對應object,function,object

所以陣列和普通物件通過typeof是區分不出來的,可以通過instanceof區分,但是instanceof會有全域性侷限性,跨iframe的array通過instanceod檢測型別會有問題,更安全的型別檢測時object.prototype.tostring().call(arr),引用型別的引用指標是儲存在棧裡,而實際的物件值儲存在堆(可以動態申請大小)裡,乙個堆可以對應多個指標棧,所以當所有的指標棧消失後對應的堆才被釋放

陣列:array 型別 ,

宣告方式

```var a = new array(aru); // aru可以是長度或者初始化引數或者沒有aru

var a = ; // 字面量形式

```檢測方式:instanceof array, isarray()

棧陣列:通過push(),pop()方法模擬類似棧的陣列;佇列陣列:通過shift(),push();

排序方法:reverse(func(argue1, argue2)) // 倒置;sort() // 預設是公升序,將每一項轉變為字串然後比較,自定義函式比較 如果返回負數那麼argue1 在argue2前,正數反之

操作方法:concat(arg1,arg2...),基本引數陣列新建陣列,然後新增剩餘引數到陣列中;slice(start,end),擷取部分陣列,end預設值是陣列末尾;splice(arg1,arg2,arg3..),如果arg1存在,arg2不為0,arg3。。有值則是將arg3以及以後的元素進行替換,arg2為0其餘條件不變則為插入,arg2不為0並且後面沒有其他的引數了(沒有arg3,,,)則為刪除

(3) 型別轉化

1、其它型別轉boolean,可以通過!!或者boolean(),例如

```!!1 // true

!!0 // false

boolean('hello') // true

```**注**:其它型別的值轉為boolean時只有'',null,undefined,0,nan是false,其餘一律是true

2、其它型別轉number,通過number(),parseint(),parsefloat()

```number(true) // 1 parseint()同樣

number(false) // 0 parseint()同樣

number(null) // 0 parseint()同樣

number(undefined) // nan parseint()同樣

number('') // 0, 非浮點、數字、十六進製制、空字串的其他字串轉化後是nan

parseint('') // nan 字串中開頭的除去空格字元如果不是數字或者負號就會返回nan,數字後面的空格會被忽略

parsefloat('') // nan 不同於parseint的是第乙個可以.

```3、 其它型別轉string,通過value.tostring(arg),其中arg表示進製,string(value)

```true.tostring(); // 'true' string(value) 一樣

1.tostring(); // '1' string(value) 一樣

null.tostring(); // 報錯

undefined.tostring(); // 報錯

string(null) // 'null'

string(undefined) // 'undefined'

```

JavaScript 資料型別

變數 宣告區域性變數 varmessage 宣告全部變數 message typeof 例如 var message some string alert typeof message string alert typeof message string alert typeof 95 number ...

Javascript資料型別

ecmascript中有5種簡單資料型別 也稱為基本資料型別 1.undefined 該型別只有乙個值,即undefined。在使用var宣告但未初始化時,這個變數就是undefined 2.null 該型別只有乙個值,即null。null undefined 3.boolean 4.number ...

JavaScript資料型別

undefined派生於null,因此在使用 進行比較時會返回true 沒有必要將變數值顯示宣告undefined 宣告空物件時應將其值賦值為nullundefined與null的關係 3 boolean true為真,false為假 true不一定 1,false不一定 0 使用boolean 進...