首頁 > web前端 > js教程 > 主體

js的資料型別及JS基本資料型別具體有哪幾種

小云云
發布: 2018-02-03 11:15:32
原創
6138 人瀏覽過

本文主要跟大家分享js的資料型別及JS基本資料型別具體有哪幾種,希望能幫助大家。

近期做一些專案的時候發現,自己的js基礎還是不夠紮實,再看一次犀牛書,加深自己的理解和印象。所以從這篇文章開始,後面都是關於原生js的一些內容。

我們先介紹一下js的資料型態其中一個。

一、javaScript(以下簡稱js)的資料型別分為兩類:原始型別和物件型別。 js的原始型別包括數字、字串和布林值。

二、js有兩個特殊的原始值:null(空)和undefined(未定義),它們不是數字、字串和布林值。它們通常分別代表各自特殊類型的唯一成員。

三、js中除了數字、字串、布林值、null和undefined之外的就是物件了,物件(object)是屬性的集合,每個屬性都由「名/值對」(值可以是原始值,例如數字、字串,也可以是物件)構成。

四、普通的js物件是「命名值」的無序集合。 js同樣定義了一種特殊物件-陣列(array),表示帶編號的值的有序集合。 js專門為陣列定義了文法,後面我們會有詳細的敘述。使數組擁有一些和普通物件不同的特有行為特性。

五、js也定義了一種特殊物件-函數。函數具有與它相關聯的可執行程式碼的對象,透過呼叫函數運行可執行程式碼,並返回運行結果。和陣列一樣,函數的行為特徵和其他物件都不一樣。

六、如果函數用來初始化(使用new運算子)一個新建的對象,我們稱為建構函數,每個建構函式定義一個類別物件

下面我具體的為大家講解一下資料型別的第一種-數字

依照js中的數字格式,能夠表示的整數範圍是從-9007199254740992~9007199254740992(也就是-253~253)包含邊界值。

在js中,當一個數字直接出現在js程式中,我們稱為數字直接量,js支援多種格式的數字直接量。

整數直接量,用一個數字序列表示一個十進制整數,例如:0     3    133333

浮點型直接量,浮點型直接量可含有小數點,例如:3.14    . 3333   2.02e23(2.02x1023)e或E代表多少次方

js中的算術運算(+(加)、 -(減)、 x(乘)、/(除)、%(取餘))除了這些基本的運算子外,js還支援更複雜的算術運算,這些複雜的運算透過作為Math物件的屬性定義的函數和常數來實現:

Math.pow(2,53)       //2的53次幂也就是8007199254740992
  Math.round(.6)       //1.0  四舍五入
  Math.ceil(.6)        //1.0   向上取整
  Math.floor(.6)       //0.0   向下取整
  Math.abs(-5)        //5    求绝对值
  Math.max(x,y.z)       //返回最大值
  Math.min(x,y.z)       //返回最小值
  Math.random()       //生成一个大于等于0小于1的伪随机数
  Math.PI           //π  圆周率
  Math.E           //e  自然对数的底数
  Math.sqrt(3)        //3的平方根
  Math.pow(3,1/3)        //3的立方根
  Math.sin(0)           //三角函数:还有cos()和atan等
登入後複製

js採用了IEEE-754浮點數表示法,這是一種二進位表示法,可以精確的表示分數,例如1/2,、1/8和1/1024,但是我們常用的分數都是十進位的分數1/10/1/100等。二進制浮點數表示法並不能精確表示類似0.1這樣簡單的數字。

例如

0.3-0.2是不等于0.2-0.1的,在真实的运行环境下
0.3-0.2=0.09999999999999998   而
0.2-0.1=0.1
这是由于舍入误差导致的
登入後複製

JS開發中基本資料型別有哪些? JS的資料型別包括基本資料型別、複雜資料型別和特殊資料類型,以下我們主要先來講解基本資料型態。

0、先提示兩個下面用到的知識點:

0.1typeof,是用來偵測變數類型的

寫法:typeof a;

0.2console.log()是用來在控制台列印你所需要的部分的

一般瀏覽器在進入HTML文件頁面後,點擊右鍵選擇檢查,就會出現控制台,選擇console你就可以看到你所印的內容了

另外:alert()是頁面彈框顯示內容

document.write()是輸出內容在頁面當中的方式

1、變數:在講基本資料型態之前,我們先來了解JS定義變數的方法。

1.1定義變數:在定義變數的時候,可以給變數初始值,不區分型別(容器的型別)。

1.2 變數的命名規格:字母、數字、底線和$的組合;不能以數字開頭;不能是關鍵字和保留字;駝峰命名法。

1.3初始值只能是一下5大類型:

數值型別Number,只能是數字或小數

   
var a = 10;
console.log(typeof a);//number
var b = 10.6;
console.log(typeof b);//number
登入後複製

   

字串型別String ,用單引號或雙引號包裹的任何字元

   
var c = 'hello';
console.log(typeof c);//string
var d = "world";
console.log(typeof d);//string
登入後複製

   

布林類型Boolean,只能是true或false代表真假

var e = true;
console.log(typeof e);//boolean
var f = false;
console.log(typeof f);//boolean
登入後複製

   

#未定義undefined,定義變數後不賦值,這個變數就是undefined

   
var g;
console.log(typeof g);//undefined
登入後複製

   

空null,是物件類型, 物件類型object有很多種,如陣列物件、數學物件、日期對象(後期學習)

   
var h = "";
console.log(typeof h);//null
登入後複製

   

而這五種就是JS的五種基本資料型態。

2、型別轉換

數值型別、字串型別與布林型別的互相轉換

2.1轉數值—Number()

console.log(Number("123"));//123
console.log(Number("12.3"));//12.3
console.log(Number("12hshs"));//NaN
console.log(Number('0034'));//34
console.log(Number(""));//0
console.log(Number(true));//1
console.log(Number(false));//0
console.log(Number(null));//0
console.log(Number(undefined));//NaN
登入後複製

   

註:NaN:not a number,其他的以後會解釋

2.2轉字串String(),寫什麼轉什麼

   
console.log(String(123));//123
console.log(String(0));//0
console.log(String(true));//true
console.log(String(false));//false
console.log(String(undefined));//undefined
console.log(String(null));//null
登入後複製

2.3轉布林Boolean()

技巧:

數字轉boolean非0為真

字符串转boolean非空为真

NaN null undefined转字符串为假

console.log(Boolean("123"));//true
console.log(Boolean("0"));//true
console.log(Boolean("山东"));//true
console.log(Boolean(""));//false
console.log(Boolean("true"));//true
console.log(Boolean("false"));//true
console.log(Boolean(14));//true
console.log(Boolean(0));//false
console.log(Boolean(NaN));//false
console.log(Boolean(-100));//true
console.log(Boolean(undefined));//false
console.log(Boolean(null));//false
登入後複製

相关推荐:

JavaScript中的特殊数据类型详解

JS开发中基本数据类型具体有哪几种

关于js中基本数据类型、引用数据类型区别

以上是js的資料型別及JS基本資料型別具體有哪幾種的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!