首頁 web前端 前端問答 es6中有多少種原始資料類型

es6中有多少種原始資料類型

May 05, 2022 pm 06:43 PM
es6

有6種原始資料類型:1、Null類型,表示一個「空」值,即不存在任何值;2、Undefined類型,表示未定義;3、Number類型,表示數字(整數、浮動數等);4、String類型,一段以單引號或雙引號包裹的文字;5、Symbol類型等。

es6中有多少種原始資料類型

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

es6中有9種資料類型,它們有可以分成兩類:

  • #原始資料型別(6種):字串(String)、數字(Number )、布林(Boolean)、空(Null)、未定義(Undefined)、Symbol;

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

下面就來聊聊6種原始資料型別。

##boolean布林值,邏輯運算的值Symbol表示獨一無二的值

1、Null 類型

Null 是一個只有一個值的特殊資料類型,表示一個「空」值,即不存在任何值,什麼都沒有,用來定義空物件指標。

使用typeof 運算子來檢視Null 的型別,會發現Null 的型別為Object

var a = null;
console.log(typeof a);
登入後複製

es6中有多少種原始資料類型

說明Null 其實使用屬於Object(物件)的一個特殊值。因此透過將變數賦值為 Null 我們可以建立一個空的物件。

2、Undefined 類型

Undefined 也是只有一個值的特殊資料類型,表示未定義。當我們宣告一個變數但未給變數賦值時,這個變數的預設值就是 Undefined。例如:

var num;
console.log(num);  // 输出 undefined
登入後複製

es6中有多少種原始資料類型

在使用 typeof 運算子檢視未賦值的變數型別時,會發現它們的型別也是 undefined。對於未宣告的變量,使用typeof 運算子查看其類型會發現,未宣告的變數也是undefined,範例程式碼如下:

var message;
console.log(typeof message);  // 输出 undefined
console.log(typeof str);     // 输出 undefined
登入後複製

es6中有多少種原始資料類型

說明:null 、undefined的異同點:

相同點:都是一個值的資料型別;二者參與判斷時都回傳false;二者都沒有方法

不同點:

#(a )、null 是一個對象,而undefined 不是以個對象;

(b)、null 是一個關鍵字,undefined不是關鍵字;

(c)、null轉換為數字時為0,而undefined轉換為數字時是NaN;

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

alert(null == undefined) ;//true
登入後複製

#3、Number 類型

數值(Number)型別用來定義數值,JavaScript 中不區分整數和小數(浮點數),統一使用Number 類型表示,如下例所示:

var num1 = 123;     // 整数
var num2 = 3.14;    // 浮点数
登入後複製

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

對於一些極大或極小的數,也可以用科學(指數)計數法來表示,如下例所示:

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

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

  • Infinity:用來表示正無窮大的數值,一般指大於1.7976931348623157e 308 的數;

  • -Infinity:用來表示負無窮大的數值,一般指小於5e-324 的數;

  • NaN:即非數值(Not a Number 的縮寫) ,用來表示無效或未定義的數學運算結構,例如0 除以0。

提示:如果某次計算的結果超出了JavaScript 中Number 類型的值範圍,那麼這個數字就會自動轉換為無限大,正數為Infinity,負數為-Infinity 。

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

但是NaN 是資料型,也就是說typeof NaN 的回傳值是'number';

#針對上面兩個特性,ECMAScript提供了一個函數isNaN(); 用途是判斷傳入的值能否轉換為數字,回傳值是boolean值。

空字串轉換為數字是0;

將一個值轉換為數字類型可以使用Number();

4、String 類型

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

定義字串時,如果字串中包含引號,可以使用反斜線\來轉義字串中的引號,或選擇與字串中不同的引號來定義字串,如下例所顯示:

var str = "Let's have a cup of coffee.";  // 双引号中包含单引号
var str = 'He said "Hello" and left.';    // 单引号中包含双引号
var str = 'We\'ll never give up.';        // 使用反斜杠转义字符串中的单引号
登入後複製

5、Boolean 類型

#布林(Boolean)類型只有兩個值,true(真)或false(假),在做條件判斷時使用的比較多,您除了可以直接使用true 或false 來定義布林類型的變數外,還可以透過一些表達式來得到布林類型的值,例如:

var a = true;   // 定义一个布尔值 true
var b = false;  // 定义一个布尔值 false
var c = 2 > 1;  // 表达式 2 > 1 成立,其结果为“真(true)”,所以 c 的值为布尔类型的 true
var d = 2 < 1;  // 表达式 2 < 1 不成立,其结果为“假(false)”,所以 c 的值为布尔类型的 false
登入後複製

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

正常情況下,只有這六種情況下會轉為false:空字串、null、undefined、0、-0、NaN

把一個陣列如何轉換為boolean值可以用兩中方法:Boolean()、 !!()

6、Symbol 類型

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

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 看起来是相同的,但实际上它们并不一样,根据 Symbol 类型的特点,sym1 和 sym2 都是独一无二的
登入後複製

【相关推荐:javascript视频教程web前端

資料型別 說明
#null 空值,表示非物件
undefined 未定義的值,表示未賦值的初始化值
number 數字,數學運算的值
string 字串,表示訊息流

以上是es6中有多少種原始資料類型的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

<🎜>:泡泡膠模擬器無窮大 - 如何獲取和使用皇家鑰匙
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
北端:融合系統,解釋
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
Mandragora:巫婆樹的耳語 - 如何解鎖抓鉤
3 週前 By 尊渡假赌尊渡假赌尊渡假赌

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

熱門話題

Java教學
1666
14
CakePHP 教程
1425
52
Laravel 教程
1325
25
PHP教程
1272
29
C# 教程
1252
24
ES6怎麼求數組反轉 ES6怎麼求數組反轉 Oct 26, 2022 pm 06:19 PM

在ES6中,可以利用數組物件的reverse()方法來實現數組反轉,該方法用於顛倒數組中元素的順序,將最後一個元素放在第一位,而第一個元素放在最後,語法「array.reverse()」。 reverse()方法會修改原始數組,如果不想修改需要配合擴充運算子「...」使用,語法「[...array].reverse()」。

async是es6還是es7的 async是es6還是es7的 Jan 29, 2023 pm 05:36 PM

async是es7的。 async和await是ES7中新增內容,是對於非同步操作的解決方案;async/await可以說是co模組和生成器函數的語法糖,用更清晰的語意解決js非同步程式碼。 async顧名思義是「非同步」的意思,async用於聲明一個函數是異步的;async和await有一個嚴格規定,兩者都離不開對方,且await只能寫在async函數中。

小程式為什麼要將es6轉es5 小程式為什麼要將es6轉es5 Nov 21, 2022 pm 06:15 PM

為了瀏覽器相容。 ES6作為JS的新規範,加入了許多新的語法和API,但現代瀏覽器對ES6新特性支援不高,所以需將ES6程式碼轉換為ES5程式碼。在微信web開發者工具中,會預設使用babel將開發者ES6語法程式碼轉換為三端都能很好支援的ES5的程式碼,幫助開發者解決環境不同所帶來的開發問題;只需要在專案中配置勾選好「ES6轉ES5」選項即可。

es5和es6怎麼實現陣列去重 es5和es6怎麼實現陣列去重 Jan 16, 2023 pm 05:09 PM

es5中可以利用for語句和indexOf()函數來實現數組去重,語法“for(i=0;i<數組長度;i++){a=newArr.indexOf(arr[i]);if(a== -1){...}}」。在es6中可以利用擴充運算子、Array.from()和Set來去重;需要先將陣列轉為Set物件來去重,然後利用擴充運算子或Array.from()函數來將Set物件轉回數組即可。

es6怎麼找出2個數組中不同項 es6怎麼找出2個數組中不同項 Nov 01, 2022 pm 06:07 PM

步驟:1、將兩個陣列分別轉換為set類型,語法「newA=new Set(a);newB=new Set(b);」;2、利用has()和filter()求差集,語法“ new Set([...newA].filter(x =>!newB.has(x)))”,差集元素會被包含在一個set集合中返回;3、利用Array.from將集合轉為數組類型,語法“Array.from(集合)”。

es6暫時性死區是什麼意思 es6暫時性死區是什麼意思 Jan 03, 2023 pm 03:56 PM

在es6中,暫時性死區是語法錯誤,是指let和const命令使區塊形成封閉的作用域。在程式碼區塊內,使用let/const指令宣告變數之前,變數都是不可用的,在變數宣告之前屬於該變數的「死區」;這在語法上,稱為「暫時性死區」。 ES6規定暫時性死區和let、const語句不出現變量提升,主要是為了減少運行時錯誤,防止在變量聲明前就使用這個變量,從而導致意料之外的行為。

require是es6語法嗎 require是es6語法嗎 Oct 21, 2022 pm 04:09 PM

不是,require是CommonJS規範的模組化語法;而es6規範的模組化語法是import。 require是運行時加載,import是編譯時加載;require可以寫在程式碼的任意位置,import只能寫在文件的最頂端且不可在條件語句或函數作用域中使用;require運行時才引入模組的屬性所以效能相對較低,import編譯時引入模組的屬性所所以效能稍高。

es6怎麼判斷陣列裡總共有多少項 es6怎麼判斷陣列裡總共有多少項 Jan 18, 2023 pm 07:22 PM

在es6中,可以利用array物件的length屬性來判斷數組裡總共有多少項,即取得數組中元素的個數;該屬性可傳回數組中元素的數組,只需要使用「array.length」語句即可傳回表示數組物件的元素個數的數值,也就是長度值。

See all articles