JavaScript大廈之地基:數據類型

1、數據和類型java

俗話說物以類聚,人以羣分;這裏將人和物都按類別進行了區分。咱們數據也同樣,使用計算機咱們能處理數值,也能夠處理文本還能夠處理圖形、音頻、視頻等各類各樣的數據,不一樣的數據有着各自所屬的類型。這就是咱們說的數據類型。

    JavaScript是一門弱類型語言。咱們會在各類JS入門書籍中看到這句話;通俗解釋,當咱們在JavaScript定義一個變量時,是不會預先設定好這個變量裏面存儲什麼類型的數據(可參考js變量中和java的對比),通通只能使用 var 來聲明變量,此時以不變應萬變,任何類型的數據均可存入該變量中。注意:在JavaScript中,變量沒有類別之分,但數據有。

圖片描述

2、JS數據類型
下面就來看看JS中的數據類型,在js中定義了以下幾種數據類型:大方向上分爲 基本數據類型(簡單數據類型) 和 引用數據類型(複雜數據類型)。今天介紹如下幾種基本數據類型。函數

圖片描述

一、Number(數值型)
JavaScript不區分整數和浮點數,統一使用Number來表示數值。spa

321; // 整數321
3.24 ; // 浮點數 3.14
1.1314e5; // 科學計數法表示 1.1314*100000,結果爲113140
NaN ; // NaN表示Not a Number,當沒法計算結果時,使用NaN表示
Infinity ; // 表示無限大,當數值超過了JavaScript的數值型能表示的最大範圍時,使用Infinity表示 prototype

數值型數據主要用來作四則運算,數值型數據能夠直接作四則運算,規則和數學一致:code

1+1; // 2
(3+5)*0.5; //4
1/0 ; // Infinity
0/0; //NaN
1%2; //1 %取餘 視頻

二、String(字符串)
字符串是用單引號(’)或雙引號(」)括起來的任意文本對象

‘hello’ ; // hello 文本
「world」; // world 文本 圖片

注意:單引號或雙引號並非文本內容,只是一種表示方式而已。ip

三、Boolean(布爾型)
布爾值也稱邏輯類型只有兩個值,true或false;作邏輯判斷時只能是布爾值(直接布爾值或轉換爲布爾值)。原型鏈

true ; // 這是一個true值
false; //這是一個false值
1>2 ; // 這是一個 false值
0<=1 ; // 這是一個 true值

四、null和undefined
null表示一個空的值, 表示自己爲「空」,只有一個值 null,undefined也表示無,不少時候來講,null和undefined都表示「無」的值,區分二者的意義不大。大多數狀況下咱們應該使用null。undefined僅僅在判斷函數參數是否傳遞的狀況下有用。全部已聲明可是沒有初始化的變量,默認值都爲undefined。

a = null ; // a裏面的值爲空
a = undefined; // 不建議這麼寫, 此時和 a = null 幾乎沒什麼區別

目前用法,null 表示「沒有對象」,即該處不該該有值。
(1) 做爲函數的參數,表示該函數的參數不是對象。
(2) 做爲對象原型鏈的終點。

Object.getPrototypeOf(Object.prototype); //結果爲 null

undefined表示「缺乏值」,就是此處應該有一個值,可是尚未定義。
(1)變量被聲明瞭,但沒有賦值時,就等於undefined。
(2) 調用函數時,應該提供的參數沒有提供,該參數等於undefined。
(3)對象沒有賦值的屬性,該屬性的值爲undefined。
(4)函數沒有返回值時,默認返回undefined。

var i;
i // undefined
function f(x){console.log(x)}
f() // undefined
var o = new Object();
o.p // undefined
var x = f();
x // undefined

3、數據分類
數據怎麼分類?爲何分類?分類給誰看?

一、怎麼分類
經過數據的書寫(定義)格式和關鍵(特殊)字
圖片描述

二、爲何分類
不一樣類型能夠作不一樣運算,符合現實的處理方式。
正常來講只有對於數值型咱們進行四則運算才能得出正常的結果,而對於字符串類型的數據,則不能正常運算。
好比:你如今有100塊錢,我又給了你100塊錢,用兩種不一樣的數據類型進行計算將獲得不一樣的結果。(固然這時你可能但願結果是第二種,但。。。現實很骨感)
圖片描述

三、分類給誰看
給計算機看,在現實中,人們會根據場景將數據進行分類,但是計算機不會, 它須要根據一些依據來斷定數據究竟是什麼類型,根據不一樣的類型對數據作相應的運算,最終得出它認爲正確的結果。

4、查看數據類型
雖然數據自己有類型,可是變量是沒有類型的,因此一個變量能夠在不一樣時刻存儲不一樣類型的數據,咱們能夠經過變量(或數據自己)來得到計算機對該變量中數據(或數據自己)的類型的分類。經過 」typeof」 操做符告訴咱們計算機此刻認爲該數據是什麼類型。
typeof是一個一元運算符,它返回的結果 始終是一個字符串,對不一樣的操做數,它返回不一樣的結果。
字面值,則返回該字面值所屬的類型(根據書寫格式);變量,則返回變量中此刻存儲的數據的類型

圖片描述
注意: null自己屬於object類型,因此typeof(null)會返回」object」;而當對undefined或一個聲明瞭但未賦值的變量或者一個未聲明的變量使用typeof時,則返回」undefined」。此時 undefined 只是一個字符串而已,不能算做是一種數據類型的名稱。上海尚學堂java組原創,請多關注!

圖片描述

相關文章
相關標籤/搜索