這篇文章主要講解了“jquery如何判斷是否是浮點(diǎn)數(shù)”,文中的講解內(nèi)容簡單清晰,易于學(xué)習(xí)與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學(xué)習(xí)“jquery如何判斷是否是浮點(diǎn)數(shù)”吧!
創(chuàng)新互聯(lián)公司專注為客戶提供全方位的互聯(lián)網(wǎng)綜合服務(wù),包含不限于成都做網(wǎng)站、網(wǎng)站制作、英山網(wǎng)絡(luò)推廣、小程序設(shè)計(jì)、英山網(wǎng)絡(luò)營銷、英山企業(yè)策劃、英山品牌公關(guān)、搜索引擎seo、人物專訪、企業(yè)宣傳片、企業(yè)代運(yùn)營等,從售前售中售后,我們都將竭誠為您服務(wù),您的肯定,是我們最大的嘉獎(jiǎng);創(chuàng)新互聯(lián)公司為所有大學(xué)生創(chuàng)業(yè)者提供英山建站搭建服務(wù),24小時(shí)服務(wù)熱線:028-86922220,官方網(wǎng)址:jinyejixie.com
JS(ES6)中的基本數(shù)據(jù)類型:1.數(shù)值型(Number):包括整數(shù)、浮點(diǎn)數(shù)、2.布爾型(Boolean)、3.字符串型(String)、4.數(shù)組(Array)、5.空值(Null) 、6.未定義(Undefined),基本數(shù)據(jù)類型是按值訪問的,因?yàn)榭梢灾苯硬僮鞅4嬖谧兞恐械膶?shí)際值。
引用類型:Object 、Array 、Function 、Data,引用數(shù)據(jù)類型是保存在堆內(nèi)存中的對(duì)象
1.typeof
var a;
console.log("1:" + typeof a);
var b=null;
console.log("2:" + typeof b);
var c=undefined;
console.log("3:" + typeof c);
var d=new Object;
console.log("4:" + typeof d);
var e=function() {};
console.log("5:" + typeof e);
var f={};
console.log("6:" + typeof f);
var g='';
console.log("7:" + typeof g);
var h=[];
console.log("8:" + typeof h);
var i=true;
console.log("9:" + typeof i);
var j=123;
console.log("10:" + typeof j);
var k=NaN;
console.log("11:" + typeof k);
var l=/^[-+]?\d+$/;
console.log("12:" + typeof l);
打印結(jié)果如下
總結(jié):typeof對(duì)null、undefined、NaN、數(shù)組、正則、Object的類型都為object
2.constructor
constructor 用于判斷一個(gè)變量的原型,constructor 屬性返回對(duì)創(chuàng)建此對(duì)象的數(shù)組函數(shù)的引用.
當(dāng)一個(gè)函數(shù) F被定義時(shí),JS引擎會(huì)為F添加 prototype 原型,然后再在 prototype上添加一個(gè) constructor 屬性,并讓其指向 F 的引用,當(dāng)執(zhí)行 var f=new F() 時(shí),F(xiàn) 被當(dāng)成了構(gòu)造函數(shù),f 是F的實(shí)例對(duì)象,此時(shí) F 原型上的 constructor 傳遞到了 f 上,因此 f.constructor===F
var F=function(){}
console.log(F.prototype);
var f=new F();
console.log(f.constructor===F) //true
不難看出,F(xiàn) 利用原型對(duì)象上的 constructor 引用了自身,當(dāng) F 作為構(gòu)造函數(shù)來創(chuàng)建對(duì)象時(shí),原型上的 constructor 就被遺傳到了新創(chuàng)建的對(duì)象上, 從原型鏈角度講,構(gòu)造函數(shù) F 就是新對(duì)象的類型。這樣做的意義是,讓新對(duì)象在誕生以后,就具有可追溯的數(shù)據(jù)類型,也就是說對(duì)象的constructor屬性指向他的構(gòu)造函數(shù)
所以內(nèi)置對(duì)象在內(nèi)部構(gòu)建時(shí)闊以這樣做出判斷
注:
null 和 undefined 是無效的對(duì)象,因此是不會(huì)有 constructor 存在的,這兩種類型的數(shù)據(jù)需要通過其他方式來判斷
constructor屬性并非一定指向構(gòu)造函數(shù),他也是可以修改、變更的(當(dāng)把F.prototype={}改寫后,會(huì)默認(rèn)把constructor覆蓋掉)
instanceof
instanceof 運(yùn)算符用來測試一個(gè)對(duì)象在其原型鏈中是否存在一個(gè)構(gòu)造函數(shù)的 prototype 屬性
及的構(gòu)造函數(shù)有這些基礎(chǔ)類型:String、Number、Boolean、Undefined、Null、Symbol(ES6引入了一種新的原始數(shù)據(jù)類型Symbol,表示獨(dú)一無二的值);
復(fù)雜類型:Array,Object;
其他類型:Function、RegExp、Date。
var obj=new Object()
obj instanceof Object // true
注意左側(cè)必須是對(duì)象(object),如果不是,直接返回false,列如:
var num=1
num instanceof Number // false
num=new Number(1)
num instanceof Number // true
可以看出都是num,而且都是1,只是因?yàn)榈谝粋€(gè)不是對(duì)象,是基本類型,所以直接返回false,而第二個(gè)是封裝成對(duì)象,所以true。
這里要嚴(yán)格注意這個(gè)問題,有些說法是檢測目標(biāo)的__proto__與構(gòu)造函數(shù)的prototype相同即返回true,這是不嚴(yán)謹(jǐn)?shù)?,檢測的一定要是對(duì)象才行,如:
基礎(chǔ)類型
var num=1
num.__proto__===Number.prototype // true
num instanceof Number // false
num=new Number(1)
num.__proto__===Number.prototype // true
num instanceof Number // true
num.__proto__===(new Number(1)).__proto__ // true
上面例子可以看出,1與new Number(1)幾乎是一樣的,只是區(qū)別在于是否封裝成對(duì)象,所以instanceof的結(jié)果是不同的,string、boolean等,這些基礎(chǔ)類型一樣的。
new String(1) // String
String(1) // "1"
new String(1)與String(1)是不同的,new是封裝成對(duì)象,而沒有new的只是基礎(chǔ)類型轉(zhuǎn)換,還是基礎(chǔ)類型
其他基礎(chǔ)類型一樣的。
復(fù)雜類型,比如數(shù)組與對(duì)象,甚至函數(shù)等,與基礎(chǔ)類型不同。
復(fù)雜類型
var arr=[]
arr instanceof Array // true
arr instanceof Object // true
Array.isArray(arr) // true
復(fù)雜類型從字面量是直接生成構(gòu)造函數(shù)的,所以不會(huì)像基本類型一樣兩種情況。
但是上面那個(gè)問題,當(dāng)然,基礎(chǔ)類型也會(huì)有這個(gè)問題,就是與Object對(duì)比。沒辦法,Object在原型鏈的上層,所以都會(huì)返回true,如下:
(new Number(1)) instanceof Object // true
由于從下往上,比如你判斷是Number,那就沒必要判斷是不是Object了,因?yàn)橐呀?jīng)是Number了……
感謝各位的閱讀,以上就是“jquery如何判斷是否是浮點(diǎn)數(shù)”的內(nèi)容了,經(jīng)過本文的學(xué)習(xí)后,相信大家對(duì)jquery如何判斷是否是浮點(diǎn)數(shù)這一問題有了更深刻的體會(huì),具體使用情況還需要大家實(shí)踐驗(yàn)證。這里是創(chuàng)新互聯(lián),小編將為大家推送更多相關(guān)知識(shí)點(diǎn)的文章,歡迎關(guān)注!
網(wǎng)頁標(biāo)題:jquery如何判斷是否是浮點(diǎn)數(shù)
文章鏈接:http://jinyejixie.com/article12/jpdidc.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)頁設(shè)計(jì)公司、微信公眾號(hào)、品牌網(wǎng)站制作、微信小程序、外貿(mào)網(wǎng)站建設(shè)、虛擬主機(jī)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)