1. 程式人生 > 實用技巧 >JavaScript基礎(01_基本資料型別)

JavaScript基礎(01_基本資料型別)

字面量和變數

  • 字面量,都是一些不可改變的值

    • 比如:1,2,3,4

    • 字面量可以直接使用,但是一般不會直接使用字面量

  • 變數,可以用來儲存字面量,而且變數的值是可以任意改變的

    • 變數方便使用

    • 宣告變數,在js中使用var關鍵字來宣告一個變數

      var b=789;
  • 識別符號

    • 在JS中所有的可以由我們自主命名的都可以成為識別符號

    • 例如:變數名、函式名、屬性名都屬於識別符號

    • 命名一個識別符號時需要遵守如下規則:

      • 識別符號中可以含有字母、數字、"_"、"$"

      • 識別符號不能以數字開頭

      • 識別符號不能是ES中的關鍵字或者保留字

      • 識別符號一般都採用駝峰命名法

      • 如:helloWorld 、 xxYyZzz

    • JS底層儲存識別符號時實際上是採用的Unicode編碼

資料型別(字面量的型別)

  • js中共六種資料型別:

    • String 字串

      • 使用雙引號或者單引號引起來,但是不要混合使用

      • 引號巢狀時要混用

      • 在字串中可以使用\作為轉義字元

    • Number 數值

      • 在JS中所有的數值都是Number型別,包括證書和浮點數

      • JS中表示的數字最大值 1.7976931348623157e+30

      • 如果是用Number表示的數字超過了最大值,則會返回一個Infinity,表示正無窮

        • 正無窮 Infinity 都是Number型別

        • 負無窮 -Infinity 都是Number型別

        console.log(Number.MAX_VALUE)
      • NaN 是一個特殊數字,表示not a number , NaN也是一個數字型別

      console.log(Number.MIN_VALUE)
      • 如果使用JS進行浮點數計算,可能得到一個不精確的結果

      • 所以千萬不要使用JS進行對精確度要求比較高的運算

      • 如果要表示16進位制數字,需要以0x開頭

      • 如果需要表示8進位制,需要0開頭

      • 如果需要表示2進位制的數字,則需要0b開頭,不過不是所有瀏覽器都支援

    • Boolean 布林值

      • true - 表示真

      • false - 表示假

    • Null 空值

      • 型別的值只有一個,就是null,表示空值

      • 這個值專門用來表示 一個空物件

      • 使用typeof 檢查null,返回object

    • Undefined 未定義

      • Undefined 值只有一個,就是undefined,表示未定義

      • 使用typeof 檢查Undefined,返回 undefined

    • Object 物件

  • 其中String、Number、Boolean、Null、Undefined屬於基本資料型別

  • Object屬於引用資料型別

  • js中的變數都是儲存到棧記憶體中的

    • 形式:變數名=變數值

    • 基本資料型別的值直接在棧記憶體中進行儲存

    • 值與值之間是獨立存在的,修改一個變數不會影響其他的變數的值

  • js物件是儲存到堆記憶體中的

    • 每建立一個新的物件,就會在堆記憶體中開闢出一個新的記憶體空間

    • 而變數儲存的是物件所對應的記憶體地址(物件的引用)

    • 當通過一個變數修改屬性時,另一個也會受到影響

  • 當比較兩個基本資料型別的值時,就是比較值

  • 而比較兩個引用資料型別時,他們比較的是物件的記憶體地址

    • 如果兩個物件是一模一樣的,但是記憶體地址不同,但也返回false