javascript
instanceof用法_「JS很简单」JavaScript 基础之 instanceof操作符
最近開始在整理ES6/ES7/ES8/ES9的知識點(diǎn)(已經(jīng)上傳到 我的博客 上),碰到一些知識點(diǎn)是自己已經(jīng)忘記(用得少的知識點(diǎn)),于是也重新復(fù)習(xí)了一遍。
這篇文章要復(fù)習(xí)的 instanceof 是我在整理過程中遇到的,那就整理下來吧,不然容易忘記。
要是哪里寫得不妥,歡迎各位大佬指點(diǎn)。
1.定義
instanceof運(yùn)算符用于測試構(gòu)造函數(shù)的prototype屬性是否出現(xiàn)在對象的原型鏈中的任何位置。 —— MDN
簡單理解為:instanceof可以檢測一個實(shí)例是否屬于某種類型。
比如:
還可以在繼承關(guān)系中用來判斷一個實(shí)例是否屬于它的父類型。
比如:
2.使用方法
語法為: object instanceof constructor。
- object : 需要測試的函數(shù)
- constructor : 構(gòu)造函數(shù)
即:用instanceof運(yùn)算符來檢測constructor.prototype 是否存在參數(shù)object的原型鏈。
注意:
檢測對象是不是特定構(gòu)造函數(shù)的實(shí)例:
3.實(shí)現(xiàn)instanceof
4.instanceof 與 typeof 對比
相同:
instanceof和typeof都能用來判斷一個變量的類型。
區(qū)別:
instanceof 只能用來判斷對象、函數(shù)和數(shù)組,不能用來判斷字符串和數(shù)字等:
typeof :用于判斷一個表達(dá)式的原始值,返回一個字符串。
一般返回結(jié)果有:
- number
- boolean
- string
- function(函數(shù))
- object(NULL,數(shù)組,對象)
- undefined。
判斷變量是否存在:
不能使用:
原因是如果變量未定義,就會報未定義的錯,而應(yīng)該使用:
5.參考資料
總結(jié)
以上是生活随笔為你收集整理的instanceof用法_「JS很简单」JavaScript 基础之 instanceof操作符的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: idea启动日志在哪里_牛逼了!用 ID
- 下一篇: iris数据_MAT之ELM:ELM实现