五月天青色头像情侣网名,国产亚洲av片在线观看18女人,黑人巨茎大战俄罗斯美女,扒下她的小内裤打屁股

歡迎光臨散文網 會員登陸 & 注冊

數據類型檢測的方式有哪些?

2023-02-25 15:46 作者:網星軟件  | 我要投稿

(1)typeof

其中數組、對象、null 都會被判斷為 object,其他判斷都正確。

(2)instanceof

instanceof可以正確判斷對象的類型,其內部運行機制是判斷在其原型鏈中能否找到該類型的原型。

可以看到,instanceof只能正確判斷引用數據類型,而不能判斷基本數據類型。instanceof 運算符可以用來測試一個對象在其原型鏈中是否存在一個構造函數的 prototype 屬性。

(3) constructor

constructor有兩個作用,一是判斷數據的類型,二是對象實例通過 constrcutor 對象訪問它的構造函數。需要注意,如果創(chuàng)建一個對象來改變它的原型,constructor就不能用來判斷數據類型了:

(4)Object.prototype.toString.call()

Object.prototype.toString.call() 使用 Object 對象的原型方法 toString 來判斷數據類型:

同樣是檢測對象 obj 調用 toString 方法,obj.toString()的結果和Object.prototype.toString.call(obj)的結果不一樣,這是為什么?

這是因為 toString 是 Object 的原型方法,而 Array、function 等類型作為 Object 的實例,都重寫了 toString 方法。不同的對象類型調用 toString 方法時,根據原型鏈的知識,調用的是對應的重寫之后的 toString 方法(function 類型返回內容為函數體的字符串,Array 類型返回元素組成的字符串…),而不會去調用 Object 上原型 toString 方法(返回對象的具體類型),所以采用 obj.toString()不能得到其對象類型,只能將 obj 轉換為字符串類型;因此,在想要得到對象的具體類型時,應該調用 Object 原型上的 toString 方法。

數據類型檢測的方式有哪些?的評論 (共 條)

分享到微博請遵守國家法律
江川县| 湖南省| 穆棱市| 宝丰县| 广东省| 平山县| 仁布县| 景德镇市| 万宁市| 孙吴县| 南乐县| 富宁县| 于田县| 林西县| 原平市| 陈巴尔虎旗| 昔阳县| 丹阳市| 农安县| 射阳县| 普兰店市| 固安县| 大方县| 浦北县| 潮州市| 宜春市| 井冈山市| 都匀市| 炎陵县| 颍上县| 翼城县| 历史| 迭部县| 白玉县| 汾西县| 建瓯市| 香港| 彰化县| 盈江县| 巩义市| 泸水县|