JS資料型別之基礎資料型別

2021-10-06 18:48:04 字數 2925 閱讀 1254

基本資料型別是按值訪問的,也就是說我們可以操作儲存在變數中的實際的值;

基本資料型別的值是不可改變的,任何方法都無法改變乙個基本資料型別的值。

let name =

'qin ling ling'

name =

'lisi'

console.

log(name)

// 輸出:lisi

上面的例子看來name的值好像變了,這裡的基礎資料型別是string,也就是「qin ling ling "這裡 name 的指標指向「qin ling ling」 當下面出現name=『lisi』 的時候 name的指標指向「lisi」 這裡qin ling ling 和「lisi」是不可改變的 變化的只是他們的指標方向。

基本資料型別不可以新增屬性和方法 ,再次說明基本資料型別是不可變得。

let user =

'qinlingling'

user.age =

18 user.

method

=function()

console.

log(user.age)

// undefined

console.

log(user.method)

// undefined

上面**可以看出,基本資料型別是不能新增屬性和方法的。再次說明基本資料型別是不可變得。

基本資料型別的賦值是簡單的賦值(如果從乙個變數想另乙個變數賦值基本型別的值,會在變數物件上建立乙個新值,然後把該值賦值到新變數分配的位置上)

let  a =

20let b = a

a++console.

log(a)

// 輸出:21

console.

log(b)

// 輸出:20

基本資料型別的比較是值得比較。

基本型別的值在記憶體中佔據固定大小的空間,被儲存在棧記憶體中。(從乙個變數想另乙個變數複製基本型別的值,會建立這個值得乙個副本);

1)number型別包含整數和浮點數(浮點數數值必須包含乙個小數點,且小數點後至少有一位數字)。

浮點數會自動轉換為整數,如下:

let num  =

1.0000

console.

log(num)

// 輸出:1,-- 自動轉化為了整數

2)浮點數的最高精確度是17位,看下面的例子:

let a =

0.1let b =

0.2 console.

log(a + b)

// 輸出:0.30000000000004

上面的例子,結果竟然不是0.3,至於其他程式語言,也會遇到這種情況(關於浮點數計算會產生誤差問題,其他有些程式語言也會出現類似情況。)

3) nan:非數字型別,特點:涉及到任何關於nan 的操作,都會返回nan ,而且nan不等於自身。

4)數值轉化:

number(), 轉型函式,可以用於任何資料型別

parseint(), 將值轉換為整型,用的較多

parsefloat(),將值轉換為浮點型

1)字串型別中的單引號雙引號作用一樣;

2)字串有length 屬性,可以取得字串的長度:

let str =

'hello world'

console.

log(str.length)

//輸出:11

3)字串的值是不可變得,要改變乙個字串的值,首先要銷毀原來的字串,在用另乙個包含新值得字串去填充該字串;

4)字串轉換:

string(),轉型函式,適用於任何資料型別(null,undefined 轉換後為null和undefined)

tostring() 方法可以吧乙個邏輯值轉換為字串,並返回結果(null、undefined、沒有tostring()方法)

let ab =

'qinlingling'

let bc =

null

let cd = undefined

console.

log(ab.

tostring

(ab)

)// qinlingling

// console.log(ab.tostring(bc)) // error 報錯

// console.log(ab.tostring(cd)) // error 報錯

console.

log(

string

(ab)

)// qinlingling

console.

log(

string

(bc)

)// null

console.

log(

string

(cd)

)// undefined

1)這個型別只有兩個值,true 和 false ;

2)boolean(),轉型函式,將某個值轉換為 boolean 型別

1)null型別被看做空物件指標,只有乙個值,即null值,所以在typeof 操作符去檢測null 型別的值得時候,結果是object型別;

2)如果你定義了乙個變數,但是想在以後吧這個物件當做乙個物件來使用,最好將該物件初始化為null 值

1)只有乙個值,即undefined,如果宣告了有乙個變數,但是未給變數初始化值,那麼這個變數的值就是undefined:

2)呼叫函式時,應該提供的引數沒有提供,該引數等於undefined;

3)物件沒有賦值的屬性,該屬性的值為undefined;

4)函式沒有返回值,預設返回undefined。

資料型別基礎資料型別

資料型別 基礎型別 除八大基礎型別其他的都是引用型資料型別 引用資料型別 基礎資料型別 整型 byte 佔乙個位元組,範圍 128 127 short 佔兩個位元組,範圍 32768 32767 int 最常用 佔四個位元組,範圍 2147483648 2147483647 long 佔八個位元組 ...

js資料型別基礎

一.資料型別 資料型別包括 基本資料型別和引用資料型別 基本資料型別指的是簡單的資料段,引用資料型別指的是有多個值構成的物件。當我們把變數賦值給乙個變數時,解析器首先要確認的就是這個值是基本型別值還是引用型別值 var a 123 typeof 檢查當前變數是什麼資料型別 console.log t...

JS基礎整理之資料型別

js的資料型別 在es5的時候,我們認知的資料型別確實是 6種 number string boolean undefined object null。es6 中新增了一種 symbol 這種型別的物件永不相等,即始建立的時候傳入相同的值,可以解決屬性名衝突的問題,做為標記。其中 基本型別 單型別 ...