首先,在我們手撕instanceof的時候,我們先來看看他都有什麼用處?
let arr =
letfn
=functionfn(
)let obj =
let num =
2020
console.
log(arr instanceof
array
)//true
console.
log(arr instanceof
object
)//true
console.
log(arr instanceof
function
)//false
console.
log(arr instanceof
number
)//false
console.
log(fn instanceof
array
)//false
console.
log(fn instanceof
object
)//true
console.
log(fn instanceof
function
)//true
console.
log(fn instanceof
number
)//false
console.
log(obj instanceof
array
)//false
console.
log(obj instanceof
object
)//true
console.
log(obj instanceof
function
)//false
console.
log(obj instanceof
number
)//false
console.
log(num instanceof
array
)//false
console.
log(num instanceof
object
)//false
console.
log(num instanceof
function
)//fasle
console.
log(num instanceof
number
)//fasle
instanceof 運算子用於檢測建構函式的 prototype 屬性是否出現在某個例項物件的原型鏈上。 —mdn上面這段話來自mdn,可以說是很形象了,檢測建構函式的原型是否出現在某個例項的原型鏈上,
i.e. & e.g.instanceof的原理instanceof 運算子用於檢測array.prototype屬性是否出現在 arr._proto.__proto…上
function
instance_of
(example, classfunc)
}var proto = example.__proto__,
prototype = classfunc.prototype
if( proto && prototype)
這種函式也沒有 prototype
while
(true)}
else
}instance_of([
], array)
// true
JS 手撕快速排序
我們都知道陣列的sort底層原理就是快速排序,那麼我們可以自己封裝乙個sort函式來更深層次的理解快速排序 看了阮一峰的部落格後發現他提供的思路更加的簡潔易懂 快速排序的重要之處就是基準數的選擇,通常我們選擇陣列中的第乙個元素作為基準數,可是這是乙個優選嗎?隨機基準數 固定的基準數和隨機基準數比較起...
在js中 typeof和instanceof的區別
typeof與instanceof都是用來判斷資料型別的,返回值是否為空等情況,但是他們具體的情況該如何區分?1.首先兩者返回的值不同。typeof返回的值是乙個字串,而,instanceof返回的是布林型別的值,判斷是true或者false。typeof返回的型別有 number,boolean,...
手撕隨機森林的超引數
隨機森林有兩大隨機特點 1 random sampling of training data points when building trees 2 random subsets of features considered when splitting nodes from sklearn.en...