-
運算符的優先級
????如果運算符比較多的情況下,以便后續閱讀,可以嵌套小括號
舍入誤差的情況以及解決方案
????js IEEE754 存儲浮點型數據類型的標準????
查看全部 -
特殊類型的隱式轉換 NaN,0,undefined,null,""?
????這五個會轉為false,其他的都會轉為true
邏輯運算符&&和||隱式轉換下的情況
????&&和|| 會進行短路運算,并不會轉換為布爾值 ,如果需要做判斷,也是根據短路運算返回值判斷
==和===的區別
????== 會先進行隱式轉換 再比較
????=== 不會進行隱式轉換,直接比較
查看全部 -
深拷貝: 賦值的時候,如果發現該值是引用數據類型,就循環,一直去找基本數據,找到就賦值。如果賦值的時候碰到引用數據類型直接賦值,那么這個時候就是淺拷貝了。
?Object.create() // 一般用于淺拷貝
JSON.parse(),JSON.stringify // 一般用于深拷貝
查看全部 -
深拷貝:更改拷貝后的值不會影響到拷貝前的值
淺拷貝: 更改拷貝后的值會和拷貝前的值一致
常用拷貝方法:
????遍歷賦值?
????Object.create()?
????JSON.parse()和JSON.stringify()
查看全部 -
棧:計算機為原始類型開辟的一塊內存空間:string number ... 引用數據類型的引用地址
堆:? ?計算機為引用類型開辟的一塊內存空間 object
查看全部 -
instanceof 檢測數據對象返回bool (true,false)
instanceof 判斷A是否在B的原型鏈上
檢測方法:
? ? console.log(Object.prototype.toString.call('1')) // string
總結:typeof 和 instanceof檢測數據類型的異同
????typeof返回值是一個字符串,該字符串說明運算數的類型;結果為number,bollean,string,function(函數),object(null,數組,對象),undefined
????instanceof 是用來判斷A是否為B的實例化對象,檢測的是原型 返回值是布爾值
查看全部 -
typeof? 少了null , 多了function? 檢測數組也是function 這是因為檢測底層是否有包含call,包含就是function, 不包含就是object
查看全部 -
深拷貝 & 淺拷貝
查看全部 -
淺拷貝:假設B復制了A,當修改A時,看B是否會發生變化,如果B跟著變了.
深拷貝:假設B復制了A,當修改A時,看B是否會發生變化,如果B沒變.
查看全部 -
棧:計算機為原始類型開辟的一塊內存空間?string?number?... 堆:計算機為引用類型開辟的一塊內存空間?object
查看全部 -
instanceof?原型鏈?A?instanceof?B?true,B?instanceof?C?true
object.prototype.toString.call()檢測數據是什么類型
typeof 返回值是一個字符串,該字符串說明運算數的類型;結果為number,boolean,string,function(函數),object(null,數組,對象),undefined.
instanceof是用來判斷 A 是否為B 的實例對象,檢測的是原型
查看全部 -
console.log(typeof(null))? ?//返回object
console.log(typeoof(function(){}) //返回function
console.log(typeoof(Array)) //返回function
typeof 少null(歷史bug)? 多function(設計問題)
查看全部 -
存儲形式-堆棧
查看全部
舉報