『壹』 JS數據類型(七種基礎,三種引用)
在JS的學習與工作中,搞清楚相關數據類型是基礎中的基礎,平均一百家公司面試前端工程師的時候九十九家都會問,請你簡單舉例一下JS的數據類型,於是菜狗我就將對此進行一些自己粗淺的總結為自己留作筆記同時為各位想要學習的同學提供小小的幫助。
首先,我們要明白,在JS中,數據類型分為一下兩種:
基礎數據類型分為七種
①Number 數字型 (包含所有的整數,浮點數,負數等)
②String 字元串型 (包含任意文本)
③boolean 布爾型 (僅有兩種類型,ture與false)
④Undefined 未定義 (僅有一種,undefined)
⑤Null 空/不存在 (僅有一種,null)
⑥Symbol (實現唯一標識)
對此進行簡單的舉例
⑦BigInt(任意精度整數)(將與ES10中出現)
對此數據類型存在進行簡單解釋
BigInt 通過數字加n的方法來表示,支持二進制,八進制,十六進制
以下寫法結果均為轉換為字元串後得而結果,BigInt類型轉換字元串後不會再帶著n
Ⅰ.通常寫法
Ⅱ .十六進制
Ⅲ.八進制(注意區分數字0與字母o)
Ⅳ. 二進制
引用數據類型共有三種
①Array類型 (數組型)
②Object類型 (對象型)
③Function類型 (函數/方法)
以上就是十種JS中的數據類型,如有錯誤,歡迎指正。
如果本文能幫到你,那麼菜狗很開心,大家一起 加油!
『貳』 js基礎知識點
JavaScript的組成部分包括DOM、BOM以及ECMAScript。DOM與BOM用於操作瀏覽器環境,ECMAScript是JavaScript的核心語言規范。
JavaScript運行的三步驟中,函數聲明優先於變數聲明。函數聲明時,其定義會立即提升到全局作用域中。
棧遵循LIFO(先進後出)原則,新添加或刪除的元素位於棧頂。主要存放基本類型變數和對象引用,如數組。
隊列遵循FIFO(先進先出)原則,新元素位於尾部,舊元素位於頭部。用於存放基本類型變數和對象引用。
作用域定義了變數與函數的可訪問范圍,分為全局作用域和局部作用域。全局作用域中變數與函數可見,局部作用域內僅能訪問該作用域內的變數與函數。
字元串的賦值與操作涉及原始類型與包裝類型。原始類型如數字、字元串等,不帶屬性與方法。在操作時,會創建對應的包裝類型對象。
預編譯過程包括在全局作用域創建全局對象,提升變數與函數,然後存入全局變數中。這一過程包含四個步驟,涉及變數和函數的初始化與提升。
執行環境在每次函數執行時創建,具有獨特的上下文。執行完畢後,環境被銷毀,作用域鏈包含函數運行時的所有活動對象。
改變作用域鏈的方法在於JavaScript引擎存取的內部屬性[[Scope]],包含了函數作用域中對象的集合。
塊級作用域通過解析函數創建AO上下文環境,被提升的變數與函數在變數環境中,塊級作用域的變數則存放在詞法環境的獨立區域。詞法環境內部結構維護了一個小型棧,用於變數查找。
ES6引入了let和const關鍵字,使JavaScript具備塊級作用域,提高了代碼的可讀性和可維護性。