-
typeof 字符串 => 數據類型(undefined、 boolean、number、string等)
instanceof 原型 => true/false
// 檢測數據類型返回[Object String]
Object.prototype.toString.call('1') // string
查看全部 -
typeof
查看全部 -
深拷貝的三種方式
1,JSON.parse(JSON.stringjfy(obj))?
缺點:取不到undefined的key,如果對象里有函數,函數無法被拷貝下來,無法拷貝對象原型鏈中的屬性和方法?
2,Object.assign({},obj)
缺點:不是真正的深拷貝,屬性是對象的時候,對象還是淺拷貝
3,遞歸方式實現深拷貝
查看全部 -
數據類型
基本數據類型:Undefined、Null、Boolean、Number、String
引用數據類型:Object
typeof
檢測null時會返回object,
因為null類型的機器碼全是0,
而typeof檢測到后三位全是0的時候,會返回object
檢測到object類型之后,會再次調用內部的一個[[call]]函數,如果有則返回function,否則返回object
let str = "asdf";
typeof返回string,棧類型存儲
let str = new String("asdf")
typeof 返回object,堆類型存儲
instanceof
通過原型鏈來檢測,返回boolean值,true false
A instanceof B
A是否是B的實例對象
查看全部 -
浮動數相加不準確問題在于計算機會把浮點數轉成二進制? 超過計算機存儲長度之后 會舍掉? 導致轉換回來之后數字不精確
?// 省略小數點2位之后數字
? ? ? ? console.log(parseFloat(0.1+0.2).toFixed(2));
? ? ? ? //轉成整數類型
? ? ? ? function add(m1,m2){
? ? ? ? ? ? var m=Math.pow(10,2);
? ? ? ? ? ? return (m1*m+m2*m)/m
? ? ? ? }
? ? ? ? console.log(add(0.1,0.2));
查看全部 -
NaN undefined? 0 null "" 會轉換成false
其余都是true
查看全部 -
基本數據(簡單數據類型? 值類型)類型存放在棧中,引用數據類型(復雜數據類型? 對象類型)的數據存放在堆中,但是引用數據類型的地址存放在棧中
查看全部 -
typeof檢測引用類型function的時候 會返回function 而不是object,這是在設計js的時候檢測引用類型,會檢查是否包含[ [call] ]方法,包含的會返回function? ?不包含的返回object
查看全部 -
typeof檢查null的時候 返回的數據類型是根據機器碼的后三位而決定的? 當檢測到null的時候返回000 =>object
查看全部 -
聽不懂聽不懂聽不懂查看全部
-
function?instanceof(A,B){ let?p=A while(p){ if(p===B.prototype){ ????return?true ????} ????p=p._proto_ ??} ???return?false }
typeof 返回的是數據的類型,instanceof返回的是布爾值
查看全部 -
遍歷賦值 -> 簡單循環賦值是淺拷貝,遞歸循環判斷類型賦值:是深拷貝
Object.create() -> 簡單循環賦值是淺拷貝,遞歸循環判斷類型賦值:是深拷貝
JSON.parse()和JSON.stringify() ->深拷貝
深淺拷貝:假設B復制了A,當修改A時,看B是否發生變化,B變了,說明時淺拷貝;B沒變,就是深拷貝
查看全部 -
接電話大家都會講得好講得好講得好查看全部
-
講得好講得好講得好講得好查看全部
-
老師講得好老師講得好老師講得好
查看全部 -
老師講得好老師講得好
查看全部 -
老師講得好
查看全部 -
幾點回家的話
查看全部 -
講得好
查看全部 -
vue? html? css? js? ?算法和數據結構? 設計模式。萬變不離其宗。 js? js? js? ?
查看全部
舉報