溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

es6中的原始數(shù)據(jù)類型有哪些

發(fā)布時(shí)間:2022-05-10 15:20:12 來源:億速云 閱讀:269 作者:iii 欄目:web開發(fā)

這篇文章主要介紹了es6中的原始數(shù)據(jù)類型有哪些的相關(guān)知識(shí),內(nèi)容詳細(xì)易懂,操作簡單快捷,具有一定借鑒價(jià)值,相信大家閱讀完這篇es6中的原始數(shù)據(jù)類型有哪些文章都會(huì)有所收獲,下面我們一起來看看吧。

有6種原始數(shù)據(jù)類型:1、Null類型,表示一個(gè)“空”值,即不存在任何值;2、Undefined類型,表示未定義;3、Number類型,表示數(shù)字(整數(shù)、浮動(dòng)數(shù)等);4、String類型,一段以單引號(hào)或雙引號(hào)包裹的文本;5、Symbol類型等。

本教程操作環(huán)境:windows7系統(tǒng)、ECMAScript 6版、Dell G3電腦。

es6中有9種數(shù)據(jù)類型,它們有可以分成兩類:

  • 原始數(shù)據(jù)類型(6種):字符串(String)、數(shù)字(Number)、布爾(Boolean)、空(Null)、未定義(Undefined)、Symbol;

  • 引用數(shù)據(jù)類型(3種):對(duì)象(Object)、數(shù)組(Array)、函數(shù)(Function)。

下面就來聊聊6種原始數(shù)據(jù)類型。

數(shù)據(jù)類型說明
null空值,表示非對(duì)象
undefined未定義的值,表示未賦值的初始化值
number數(shù)字,數(shù)學(xué)運(yùn)算的值
string字符串,表示信息流
boolean布爾值,邏輯運(yùn)算的值
Symbol表示獨(dú)一無二的值

1、Null 類型

Null 是一個(gè)只有一個(gè)值的特殊數(shù)據(jù)類型,表示一個(gè)“空”值,即不存在任何值,什么都沒有,用來定義空對(duì)象指針。

使用 typeof 操作符來查看 Null 的類型,會(huì)發(fā)現(xiàn) Null 的類型為 Object

var a = null;
console.log(typeof a);

es6中的原始數(shù)據(jù)類型有哪些

說明 Null 其實(shí)使用屬于 Object(對(duì)象)的一個(gè)特殊值。因此通過將變量賦值為 Null 我們可以創(chuàng)建一個(gè)空的對(duì)象。

2、Undefined 類型

Undefined 也是一個(gè)只有一個(gè)值的特殊數(shù)據(jù)類型,表示未定義。當(dāng)我們聲明一個(gè)變量但未給變量賦值時(shí),這個(gè)變量的默認(rèn)值就是 Undefined。例如:

var num;
console.log(num);  // 輸出 undefined

es6中的原始數(shù)據(jù)類型有哪些

在使用 typeof 操作符查看未賦值的變量類型時(shí),會(huì)發(fā)現(xiàn)它們的類型也是 undefined。對(duì)于未聲明的變量,使用 typeof 操作符查看其類型會(huì)發(fā)現(xiàn),未聲明的變量也是 undefined,示例代碼如下:

var message;
console.log(typeof message);  // 輸出 undefined
console.log(typeof str);     // 輸出 undefined

es6中的原始數(shù)據(jù)類型有哪些

說明:null 、undefined的異同點(diǎn):

相同點(diǎn):都是一個(gè)值的數(shù)據(jù)類型;二者參與判斷時(shí)都返回false;二者都沒有方法

不同點(diǎn):

(a)、null 是一個(gè)對(duì)象,而undefined 不是以個(gè)對(duì)象;

(b)、null 是一個(gè)關(guān)鍵字,undefined不是關(guān)鍵字;

(c)、null轉(zhuǎn)換為數(shù)字時(shí)為0,而undefined轉(zhuǎn)換為數(shù)字時(shí)是NaN;

(d)、typeof null返回’object‘,typeof undefined 返回’undefined‘;

alert(null == undefined) ;//true

3、Number 類型

數(shù)值(Number)類型用來定義數(shù)值,JavaScript 中不區(qū)分整數(shù)和小數(shù)(浮點(diǎn)數(shù)),統(tǒng)一使用 Number 類型表示,如下例所示:

var num1 = 123;     // 整數(shù)
var num2 = 3.14;    // 浮點(diǎn)數(shù)

注意:Number 類型所能定義的數(shù)值并不是無限的,JavaScript 中的 Number 類型只能表示 -(253 - 1) 到 (253 -1) 之間的數(shù)值。

對(duì)于一些極大或者極小的數(shù),也可以通過科學(xué)(指數(shù))計(jì)數(shù)法來表示,如下例所示:

var y=123e5;      // 123 乘以 10 的 5 次方,即 12300000
var z=123e-5;     // 123 乘以 10 的 -5 次方,即 0.00123

另外,Number 類型中還有一些比較特殊的值,分別為 Infinity、-Infinity 和 NaN,其中

  • Infinity:用來表示正無窮大的數(shù)值,一般指大于 1.7976931348623157e+308 的數(shù);

  • -Infinity:用來表示負(fù)無窮大的數(shù)值,一般指小于 5e-324 的數(shù);

  • NaN:即非數(shù)值(Not a Number 的縮寫),用來表示無效或未定義的數(shù)學(xué)運(yùn)算結(jié)構(gòu),例如 0 除以 0。

提示:如果某次計(jì)算的結(jié)果超出了 JavaScript 中 Number 類型的取值范圍,那么這個(gè)數(shù)就會(huì)自動(dòng)轉(zhuǎn)化為無窮大,正數(shù)為 Infinity,負(fù)數(shù)為 -Infinity。

在number中有一個(gè)奇葩,自身都不相等。即alert(NaN == NaN) // false;

但是NaN 是數(shù)據(jù)類型,也就是說 typeof NaN 的返回值是’number‘;

針對(duì)上面兩個(gè)特性,ECMAScript提供了一個(gè)函數(shù)isNaN(); 用途是判斷傳入的值能否轉(zhuǎn)換為數(shù)字,返回值是boolean值。

空字符串轉(zhuǎn)換為數(shù)字是0;

將一個(gè)值轉(zhuǎn)換為數(shù)字類型可以使用Number();

4、String 類型

字符串(String)類型是一段以單引號(hào)''或雙引號(hào)""包裹起來的文本,例如 '123'、"abc"。需要注意的是,單引號(hào)和雙引號(hào)是定義字符串的不同方式,并不是字符串的一部分。

定義字符串時(shí),如果字符串中包含引號(hào),可以使用反斜杠\來轉(zhuǎn)義字符串中的引號(hào),或者選擇與字符串中不同的引號(hào)來定義字符串,如下例所示:

var str = "Let's have a cup of coffee.";  // 雙引號(hào)中包含單引號(hào)
var str = 'He said "Hello" and left.';    // 單引號(hào)中包含雙引號(hào)
var str = 'We\'ll never give up.';        // 使用反斜杠轉(zhuǎn)義字符串中的單引號(hào)

5、Boolean 類型

布爾(Boolean)類型只有兩個(gè)值,true(真)或者 false(假),在做條件判斷時(shí)使用的比較多,您除了可以直接使用 true 或 false 來定義布爾類型的變量外,還可以通過一些表達(dá)式來得到布爾類型的值,例如:

var a = true;   // 定義一個(gè)布爾值 true
var b = false;  // 定義一個(gè)布爾值 false
var c = 2 > 1;  // 表達(dá)式 2 > 1 成立,其結(jié)果為“真(true)”,所以 c 的值為布爾類型的 true
var d = 2 < 1;  // 表達(dá)式 2 < 1 不成立,其結(jié)果為“假(false)”,所以 c 的值為布爾類型的 false

boolean類型主要用途是用于判斷;

正常情況下,只有這六種情況下會(huì)轉(zhuǎn)為false:空字符串、null、undefined、0、-0、NaN

把一個(gè)數(shù)組如何轉(zhuǎn)換為boolean值可以用兩中方法:Boolean()、 !!()

6、Symbol 類型

Symbol 是 ECMAScript6 中引入的一種新的數(shù)據(jù)類型,表示獨(dú)一無二的值,Symbol 類型的值需要使用 Symbol() 函數(shù)來生成,如下例所示:

var str = "123";
var sym1 = Symbol(str);
var sym2 = Symbol(str);
console.log(sym1);          // 輸出 Symbol(123)
console.log(sym2);          // 輸出 Symbol(123)
console.log(sym1 == sym2);  // 輸出 false :雖然 sym1 與 sym2 看起來是相同的,但實(shí)際上它們并不一樣,根據(jù) Symbol 類型的特點(diǎn),sym1 和 sym2 都是獨(dú)一無二的

關(guān)于“es6中的原始數(shù)據(jù)類型有哪些”這篇文章的內(nèi)容就介紹到這里,感謝各位的閱讀!相信大家對(duì)“es6中的原始數(shù)據(jù)類型有哪些”知識(shí)都有一定的了解,大家如果還想學(xué)習(xí)更多知識(shí),歡迎關(guān)注億速云行業(yè)資訊頻道。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請(qǐng)聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

es6
AI