97免费在线观看视频 I 午夜夫妻视频 I 久久久久久网站 I 天堂网男人 I 欧美大波大乳人奶 I 丝袜 中出 制服 人妻 美腿 I 窝窝午夜理论片影院 I 日韩在线伦理电影 I 韩国特级毛片 I 亚洲欧美另类激情 I 在线成人日韩 I 麻豆视频免费看 I 黄色生活毛片 I 极品一线天小嫩嫩真紧 I 色久天堂 I 久久久久久黄色片 I 林智妍三级露全乳电影视频 I 大肉大捧一进一出好爽视频 I 空乘伦理hd I 少妇口述与子做过爱 I 成人免费影片 I 国产精品国内免费一区二区三区 I 日韩制服一区 I 青青草福利在线 I 日本在线观看不卡视频 I 婷婷六月综合亚洲 I 国产又粗又黄又硬 I 美女扒开屁股让男子桶爽 I 欧美性午夜视频观看 I 欧美狠狠插 I 亚洲福利在线观看视频 I 无码抽搐高潮喷水流白浆 I 亚洲欧美国产日韩色伦 I 你懂的视频网站在线观看 I www.蜜桃视频在线观看 I 日本无码人妻精品一区二区蜜桃 I 久久中文字幕人妻丝袜 I 碰草在线视频 I 日韩精品成人av网站

JS 中對變量類型的判斷

2020/11/25 18:01:51   閱讀:6334    發布者:6334

1. 一般簡單的使用 typeof 或 instanceof 檢測(這兩種檢測的不完全準確)

         2. 完全準確的使用 原生js中的 Object.prototype.toString.call  或 jquery中的 $.type 檢測

在 JS 中,有 5 種基本數據類型和 1 種復雜數據類型,基本數據類型有:Undefined, Null, Boolean, Number和String;復雜數據類型是Object,Object中還細分了很多具體的類型,比如:Array, Function, Date等等。今天我們就來探討一下,使用什么方法判斷一個出一個變量的類型。

變量常用的類型:

var num  = 123;

var str  = 'abcdef';

var bool = true;

var arr  = [1, 2, 3, 4];

var json = {name:'wenzi', age:25};

var func = function(){ console.log('this is function'); }

var und  = undefined;

var nul  = null;

var date = new Date();

var reg  = /^[a-zA-Z]{5,20}$/;

var error= new Error();


1. 使用typeof檢測

我們平時用的最多的就是用typeof檢測變量類型了。這次,我們也使用typeof檢測變量的類型:
console.log(

    typeof num,

    typeof str,

    typeof bool,

    typeof arr,

    typeof json,

    typeof func,

    typeof und,

    typeof nul,

    typeof date,

    typeof reg,

    typeof error

);

// number string boolean object object function undefined object object object object


從輸出的結果來看,arr, json, nul, date, reg, error 全部被檢測為object類型,其他的變量能夠被正確檢測出來。當需要變量是否是number, string, boolean, function, undefined, json類型時,可以使用typeof進行判斷。其他變量是判斷不出類型的,包括null。

 

還有,typeof是區分不出array和json類型的。因為使用typeof這個變量時,array和json類型輸出的都是object。


2. 使用instanceof檢測

 

在 JavaScript 中,判斷一個變量的類型嘗嘗會用 typeof 運算符,在使用 typeof 運算符時采用引用類型存儲值會出現一個問題,無論引用的是什么類型的對象,它都返回 “object”。ECMAScript 引入了另一個 Java 運算符 instanceof 來解決這個問題。instanceof 運算符與 typeof 運算符相似,用于識別正在處理的對象的類型。與 typeof 方法不同的是,instanceof 方法要求開發者明確地確認對象為某特定類型。例如:

function Person(){
}

var Tom = new Person();

console.log(Tom instanceof Person); // true

instanceof還能檢測出多層繼承的關系。

3. 使用constructor檢測

在使用instanceof檢測變量類型時,我們是檢測不到number, 'string', bool的類型的。因此,我們需要換一種方式來解決這個問題。

constructor本來是原型對象上的屬性,指向構造函數。但是根據實例對象尋找屬性的順序,若實例對象上沒有實例屬性或方法時,就去原型鏈上尋找,因此,實例對象也是能使用constructor屬性的。

 
主站蜘蛛池模板: 天堂中文字幕 | 四虎国产精品免费久久久 | 国产精品成人免费视频网站京东 | 精品无码av无码专区 | 黑人干日本少妇 | 91官网入口 | 精品一区二区久久久 | 狠狠欧美| 日日av拍夜夜添久久免费 | 日本少妇视频 | 欧美丰满少妇做爰5 | 免费观看成人欧美www色 | 中文字幕v亚洲日本 | 国语自产精品视频在线30 | 国产成人在线影院 | 俄罗斯大bbbwww视频 | 中国少妇乱子伦视频播放 | 欧美国产日韩激情 | 国产精品午夜剧场免费观看 | 九九热精品视频在线 | 亚欧美一区二区三区 | 最新黄色av网址 | 成人无码免费一区二区三区 | 亚洲成色777777在线观看影院 | 亚洲国产日韩欧美综合另类bd | 女神西比尔av在线播放 | 人人妻人人澡人人爽欧美一区九九 | 丝袜美腿一区二区三区动态图 | 国产午夜精品在线 | 美女乱淫免费视频网站 | 亚洲精品久久久一区二区图片 | 欧美群p视频 | 噜噜噜亚洲色成人网站 | 日本高清视频www | 大桥未久一区 | 精品国产青草久久久久福利 | 无码人妻丰满熟妇啪啪欧美 | 成人在线免费观看网站 | 日韩精品一区二区三 | 午夜狠狠干 | 国产欧美一区二区三区四区 | 久久亚洲精品中文字幕波多野结衣 | 午夜精品在线播放 | 日日摸夜夜添夜夜添无码 | 天堂√中文最新版在线 | 国产在线国偷精品产拍免费yy | 国产欧美在线观看 | 亚洲男人天堂网站 | 午夜日韩av| 国产a国产片 | 亚洲精品成人av在线 | 国语对白刺激在线视频国产网红 | 99精产国品一二三产区网站 | 午夜精| 播放男人添女人下边视频 | 亚洲精品久久久打桩机 | 337人体做爰大胆视频 | 久久情趣视频 | 久草视频在线播放 | 精品少妇人妻av免费久久洗澡 | 欧美成人一级片 | 国产老熟妇精品观看 | 亚洲熟妇丰满多毛xxxx | 国产高清自拍av | 久久这里只精品国产免费9 免费在线黄色网址 | 国产侵犯亲女三级 | 在线不卡欧美 | www亚洲精品少妇裸乳一区二区 | 精品无码一区在线观看 | 国产杨幂丝袜av在线播放 | 免费不卡毛片 | 亚洲午夜成人精品电影在线观看 | 久久精品免费在线 | 人禽交 欧美 网站 | 在教室伦流澡到高潮hgl视频 | 欧美三级免费网站 | 精品久久久一二三区播放播放播放视频 | 国产一级在线播放 | 97久久综合区小说区图片区 | 中文字幕 欧美 日韩 | 欧美精品偷自拍另类在线观看 | 亚洲精品久久久蜜夜影视 | 成人内射国产免费观看 | 国产制片厂爱豆传媒在线观看 | 韩国女主播一区二区三区 | 亚洲国产精品无码久久sm | 国产一区二区二 | 国产高潮好爽好大受不了了 | 日本免费一区二区三区中文字幕 | 亚洲 欧美 精品 | 亚洲国产女人aaa毛片在线动漫 | 欧美成人看片一区二区三区尤物 | 日韩中文人妻无码不卡 | 99999精品视频 | 久久99精品久久久久久久青青日本 | 国外av片免费看一区二区三区 | 中文字幕av久久激情亚洲精品 | 久草在线中文888 | 最新黄色av网址 |