首頁 >web前端 >前端問答 >javascript分為哪兩種資料型

javascript分為哪兩種資料型

青灯夜游
青灯夜游原創
2021-04-07 17:32:229199瀏覽

javascript的資料型別分為兩種:1、值型別(基本型別),包含String、Number、Boolean、Null、Undefined和Symbol型別;2、引用資料型別,包含Object、Array和Function類型。

javascript分為哪兩種資料型

本教學操作環境:windows7系統、ECMAScript 6版、Dell G3電腦。

javascript資料型別分為:

  • 值型別(基本型別):字串(String)、數字(Number)、布林( Boolean)、對空(Null)、未定義(Undefined)、Symbol。

  • 引用資料型態:物件(Object)、陣列(Array)、函數(Function)。

基本資料型別詳解:

1、number型別

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

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

let num = 1.00
console.log(num) // 输出:1,自动转换为了整数

② 浮點數的最​​高精度是17位,看下面的例子:

let a = 0.1
let b = 0.2
console.log(a + b) // 输出:0.30000000000000004

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

③ NaN:非數字類型,特點:涉及任何關於NaN的操作,都會返回NaN,而且NaN不等於自身。如下:

let name = 'lisi'
console.log(name / 10) // 输出:NaN
console.log(NaN === NaN) // 输出:false

④ isNaN()函數用來判斷是否為非數字類型,如果傳入的參數是非數字類型,則傳回true,否則傳回false;

#⑤ isNaN()函數傳入一個參數,函數會先將參數轉換為數值,如果參數類型為物件類型,會先呼叫物件的valueOf()方法,再確定該方法傳回的值是否可以轉換為數值類型,如果不能,再呼叫物件的toString()方法,再確定回傳值;

⑦ 數值轉換:

Number(),轉型函數,可以用於任何資料型別

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

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

【推薦學習:javascript高階教學

2、string類型

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

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

let str = 'Hello world'
console.log(str.length) // 输出:11

③ 字串的值是不可變的,要改變一個字串的值,首先要銷毀原來的字串,再用另一個包含新值得字串區填入該字串;

④ 字串轉換:

String(),轉型函數,適用於任何資料類型(null,undefined轉換後為null和undefined)

toString()方法可以把一個邏輯值轉換成字串,並回傳結果(null、undefined沒有toString()方法)

let ab = 'zhangsan'
let bc = null
let cd = undefined
console.log(ab.toString())  // 输出:zhangsan
// console.log(bc.toString())  // error 报错
// console.log(cd.toString())  // error 报错
console.log(String(ab))  // 输出:zhangsan
console.log(String(bc))  // 输出:null
console.log(String(cd))  // 输出:undefined

3、boolean型別

#① 這個型別只有兩個值,true和false;

② Boolean(),轉型函數,將某個值轉換為Boolean型別

4、null型別

① null型別被看做空物件指針,只有一個值,也就是null值,所以在用typeof運算子去偵測null型別的值得時候,結果是object型別;

②如果你定義了一個變量,但是想在以後把這個物件當作一個物件來使用,最好將該物件初始化為null值

5、undefined型別

① 只有一個值,即undefined,如果聲明了一個變量,但是未給變量初始化值,那麼這個變量的值就是undefined:

let name = 'zhangsan'
let age
console.log(name) // 输出:zhangsan
console.log(age) // undefined,因为声明了age,但是没有给初始化值

② 呼叫函數時,應該提供的參數沒有提供,該參數等於undefined;

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

④ 函數沒有傳回值,預設回傳undefined。

6、Symbol

Symbol 是 ES6 引入了新的原始資料類型,表示獨一無二的值。 Symbol 類型是唯一的且不可修改的

var s = Symbol()

Symbol 函數前不能使用 new 指令,否則會報錯。這是因為產生的 Symbol 是原始型別的值,不是物件。

Symbol 函數可以接受一個字串作為參數,表示對 Symbol 實例的描述

更多程式相關知識,請造訪:程式設計影片! !

以上是javascript分為哪兩種資料型的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn