變量、做用域、內存---part3

肯定數據類型(檢測類型) 咱們以前提過了要檢測目前的數據類型到底是哪種js中已經提供了typeof操做符

可是咱們也看到了有兩種數據類型用這種簡單的方式貌似沒法區分就,就是咱們黑框中勾出來的類型這兩種array類型和object類型,js也爲了這兩個單獨提供了一個方法isArray

typeof是咱們比較有利的助手,可是在檢測引用類型的值得時候咱們更但願簡單明瞭的能夠獲得,而不是一次一次的去判斷,咱們再介紹一種方式instanceof,這種方式是根據原型鏈來識別(接下來會提到什麼叫原型鏈)

咱們如今已經介紹了三種方式去鑑定變量的類型,總有一款適合你

執行環境和做用域

咱們這一章先開一個頭,執行環境又稱爲 執行上下文是js中最爲重要的一個概念,執行環境決定了全部的變量和函數訪問其餘變量的權力,每個執行環節都有一個 變量對象,環境中全部能夠訪問到的變量都會在變量對象的這個{}中產生,咱們的代碼是沒法直接訪問到這個變量對象的,可是解析器會在以後的代碼解析的環節利用到這個變量對象,若是變量對象中沒有的對象說明你無法在當前的執行環節中獲取到
每個函數都有一個變量對象(執行環境),當開始解析一個函數的時候,函數的變量對象就會被推入一個 執行棧中,當函數的變量對象被利用完(函數解析完畢)的時候棧內的環境會被彈出,說了這麼多你們有沒有暈,簡單的畫一下圖

相關文章
相關標籤/搜索