js面試,變量計算等相關問題

js面試,變量計算等相關問題

一、引用類型和值類型
什麼是值類型,可以這麼理解,值類型是有2塊內存分別保存變量名和內容。
什麼是引用類型,那就是有3塊內存分別保存變量,地址,和內容。對於引用類型來說變量是指向地址而非直接指向值,多了一箇中間層,所以叫引用。
用圖表示就是:
值類型

指向
變量名
內容

引用類型

變量名a
地址
內容
變量名d

代碼表達就是:

/*值類型,值獨立存儲,相互不影響*/
let a = 100;
let b = a;
a=200;
console.log(b)//100
/*引用類型,從上圖可以分析出來,a指向地址A,b也是指向地址A因此b.b的值一改變其實就是同一個對象的值改變,因此會影響到變量a*/
let a = {
	b : 'b'
}
let b = a
b.b = "c"
console.log(a.b)

一般來說 引用類型有:數組,對象,函數
二、typeof相關
typeof主要是來區分值類型的具體類型,typeof一共6種情況

  1. typeof undefined //undefined
  2. typeof ‘abc’ //string
  3. typeof 122 //number
  4. typeof true //boolean
  5. typeof {} //object
  6. typeof [] //object
  7. typeof null //object
  8. typeof console.log //function

三、“==”和“ = = =”的區別
其實 “ = =” 只要值相等 則爲true
“= = =”要值和類型都相等才爲true
因此一個良好的編程習慣是用“= = =”來判斷,除了判斷a = = null。
a = = null相當於是
a = = = null || a = = = undefined

四、js內置函數(9種)

  1. object
  2. array
  3. boolean
  4. number
  5. string
  6. function
  7. date
  8. regexp
  9. error

五、json的理解
json就是一個對象型的數據格式。
JSON.stringify(對象)//對象=>字符串
JSON.parse(字符串)//字符串=>對象

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