溫馨提示×

溫馨提示×

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

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

JavaScript基本數(shù)據(jù)類型有哪些

發(fā)布時間:2020-08-10 11:53:34 來源:ITPUB博客 閱讀:131 作者:ii_chengzi 欄目:編程語言

大家好,今天我們來認(rèn)識下JavaScript中的數(shù)據(jù)類型。JavaScript是弱類型語言,開始的時候并不知道變量時什么類型,必須通過存儲的具體的值才能判斷變量的類型。

JavaScript的數(shù)據(jù)類型分為基本數(shù)據(jù)類型和復(fù)雜數(shù)據(jù)類型。其中,基本數(shù)據(jù)類型: Number(數(shù)字),String(字符串),Boolean(布爾),Undefined(未定義),Null(空);復(fù)雜(引用)數(shù)據(jù)類型: Object(對象), Array(數(shù)組), Function(函數(shù))。我們可以使用typeof操作符檢查變量的類型,語法為typeof(變量)/typeof 變量,typeof返回值: number, string, boolean, undefined, object, function。今天我們來認(rèn)識下JavaScript中的基本數(shù)據(jù)類型。

首先,我們來認(rèn)識下Number類型。number類型就是數(shù)字類型,主要用于存儲數(shù)據(jù),參與數(shù)學(xué)運(yùn)算。number類型包括 整數(shù),小數(shù),正數(shù),負(fù)數(shù),各種進(jìn)制的數(shù)字和特殊數(shù)字。我們通過下面的代碼來認(rèn)識下number類型:

  1. // 1.1 普通整數(shù)和小數(shù) 
  2. var  num1  =  10
  3. var  num2  = 2.5; console.log(typeof(num1), typeof num2); 
  4. // 1.2 負(fù)值 
  5. var  num3  = -0.2; 
  6. console.log(num3, typeof num3); 
  7. // 1.3 八進(jìn)制,以 0 開頭并且沒有超過 8 的值,則為 8 進(jìn)制 
  8. var  num4  =  070
  9. console.log(num4, typeof num4); // 56 number 
  10. // 1.4 十六進(jìn)制,0x 開頭,則為 16 進(jìn)制 
  11. var  num5  =  0x10
  12. console.log(num5, typeof num5); //15 number 

除了上面的number類型,JavaScript中還有一些特殊的數(shù)字類型:

1、NaN: not a number,算術(shù)運(yùn)算不能得到正常數(shù)字時會返回NaN,NaN不和NaN相等。

2、Infinity: 無窮大。

3、e: 10的次冪 1e9代表1乘以10的9次冪

4、小數(shù)相加會有誤差

  1. //1.1 NaN not a number 算術(shù)運(yùn)算不能得到正常數(shù)字都會返回 NaN var  num5  = ‘a(chǎn)’ - 5; 
  2. console.log(num5, typeof num5); // NaN number 
  3. // 1.2 無窮大 
  4. var  num6  =  1  / 0; 
  5. console.log(num6, typeof num6); // Infinity number 
  6. // 1.3 小數(shù)相加 會有一點偏差  
  7. console.log(0.1+0.2); // 0.30000000000000004 

接下來,我們來認(rèn)識下String類型,string類型就是字符串類型,是用引號引起來的內(nèi)容,單引號和雙引號都可以, 例如:“web”, ‘web’。字符串有一個常用屬性length,用來表示字符串的長度,字符串中的任意字符都占字符串的一個長度,字符串也可以通過charAt(下標(biāo))方法來獲取對應(yīng)下標(biāo)的字符,需要注意的是,字符串中下標(biāo)是從0開始的,除了charAt()方法外,也可以使用字符串加中括號的形式獲取對應(yīng)下標(biāo)的字符。

  1. var  str1  = ‘a(chǎn)bc’; 
  2. var  str2  = “123”; 
  3. console.log(typeof str1,typeof str2); //string string 
  4. console.log(str1.charAt(0)); // a 
  5. console.log(str1[0]]); // a 

此外,所有我們從 input 表單中獲取的用戶輸入的內(nèi)容都是字符串,哪怕輸入的是數(shù)字。例如下面的例子。

  1. < input   type = "text"   id = "oIn" >  
  2. < button   id = "oBut" > 輸出內(nèi)容 </ button >  
  3.  
  4. oBut.onclick  =  function  () { 
  5.     var  value  =  oIn .value;  
  6.   console.log(typeof value); // string 

接下來,我們來認(rèn)識下Boolean類型。Boolean: 布爾類型, 只有真和假,也就是true/false。

  1. var  bool1  =  true
  2. var  bool2  =  false
  3. console.log(typeof bool1, typeof bool2); // boolean boolean 
  4. console.log(10  >  20); //false 
  5. if(10    >    20){ // if 的小括號里面,會自動轉(zhuǎn)換成 boolean 類型 
  6.     alert(true) 
  7. }; 

除了通過比較能得到 Boolean 的值以外,還有一個口訣來判斷條件是否為真:非 0 為真,非空為真”。即 0 為假,其他數(shù)字為真,空字符串為假,其他為真。

最后,我們來認(rèn)識下null和undefined。null表示值為空,undefined表示變量沒有初始化(聲明未賦值),值的空缺。null表示空對象,使用typeof操作符得到的“object”。undefined:undefined類型,當(dāng)聲明變量未賦值時,變量的值就是undefined,類型也是undefined。

  1. var  a  =  null
  2. console.log(a); // null 
  3. console.log(typeof a); // object 
  4.  
  5. // var  b  =  undefined
  6. var b; 
  7. console.log(b); // undefined 
  8. console.log(typeof b); // undefined 

http://shenzhen.offcn.com/

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

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

AI