基本資料型別是按值訪問的,也就是說我們可以操作儲存在變數中的實際的值;
基本資料型別的值是不可改變的,任何方法都無法改變乙個基本資料型別的值。
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 這種型別的物件永不相等,即始建立的時候傳入相同的值,可以解決屬性名衝突的問題,做為標記。其中 基本型別 單型別 ...