對js基礎知識的一些理解

一、js中的數據類型

1.簡單類型

  • number
  • string
  • bool
  • null
  • undefined

2.複雜類型

  • obiect

3.對“簡單類型傳值,複雜類型傳址”的理解

1.首先理解簡單類型和複雜類型的變量如何在內存中存儲

  • 簡單類型的值在棧中存儲,即變量名和變量的值都在棧裏
  • 複雜類型的實例對象在堆中存儲,實例對象的地址在棧中存儲:即實例對象的變量名在棧中存儲,變量名對應的是實例對象在堆中的內存地址,堆中存儲的纔是實例對象的值(屬性和方法)

2.簡單類型傳值,複雜類型傳址

  • 簡單類型傳值
    var a=1;
    var b=a; //此時僅僅把a的變量值1賦值給變量b
  • 複雜類型傳址
    var a={
        "name":"js",
        "age":20
    };
    var b=a;//把對象a在內存的地址賦給b
    b.age=10;
    console.log(a.age);//結果是10

4.小知識

  • String類型可以是簡單類型,也可以是複雜類型
  • 字符串的值具有不可改變姓,字符串可以通過索引讀取字符串中的某個值,但不能寫
  • 基本類型(number、string)如果調用了這種類型的屬性和方法,這個變量就變成了基本包裝類型對象
  • 對象&&true=true;
  • true&&對象=對象;

~待續

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章