Warning: error_log(/data/www/wwwroot/hmttv.cn/caches/error_log.php): failed to open stream: Permission denied in /data/www/wwwroot/hmttv.cn/phpcms/libs/functions/global.func.php on line 537 Warning: error_log(/data/www/wwwroot/hmttv.cn/caches/error_log.php): failed to open stream: Permission denied in /data/www/wwwroot/hmttv.cn/phpcms/libs/functions/global.func.php on line 537
家好,html模板的判斷語(yǔ)句和Python里的寫法是一樣的,只不過(guò)每一行需要包裹在花括號(hào)和百分號(hào)里。
·從視圖函數(shù)里傳遞一個(gè)名稱為user的數(shù)據(jù),user變量的值輸入小鐵,在html文件里判斷。如果user返回了數(shù)據(jù)顯示歡迎你小鐵,否則如果沒(méi)有顯示數(shù)據(jù)顯示請(qǐng)登錄。
·最后用and if來(lái)閉合判斷語(yǔ)句,運(yùn)行Web服務(wù),在瀏覽器里查看效果。因?yàn)閡ser這個(gè)變量是有數(shù)據(jù)的,所以前端顯示的歡迎您小鐵。將user變量的值改成無(wú),回到瀏覽器查看效果,這個(gè)時(shí)候?yàn)g覽器顯示的是請(qǐng)登錄。
這就是html模板文件里if判斷語(yǔ)句的使用方法。
對(duì)象的字符串表示形式。
var toString = Object.prototype.toString;
isString
判斷給定的值是否為字符串類型。如果是范圍true,否則返回false。
function isString(val) { return typeof val === 'string'; }
isNumber
判斷給定的值是否為數(shù)字類型。如果是范圍true,否則返回false。
function isNumber(val) { return typeof val === 'number'; }
isBoolean
判斷給定的值是否為boolean類型。如果是范圍true,否則返回false。
function isBoolean(val) { return typeof val === 'boolean'; }
isUndefined
判斷給定的值是否為undefined類型。如果是范圍true,否則返回false。
function isUndefined(val) { return typeof val === 'undefined'; }
isNull
判斷給定的值是否為null類型。如果是范圍true,否則返回false。
function isNull(val) { return (typeof val === 'object') && (String(val) === 'null'); }
isSymbol
判斷給定的值是否為symbol類型。如果是范圍true,否則返回false。
function isSymbol(val) { return typeof val === 'symbol'; }
isObject
判斷給定的值是否為object類型。如果是范圍true,否則返回false。
function isObject(val) { return val !== null && typeof val === 'object'; }
isArray
判斷給定的值是否為為數(shù)組類型。如果是返回true,否則返回false。
function isArray(val) { return toString.call(val) === '[object Array]'; }
isFunction
判斷給定的值是否為funciton類型。如果是范圍true,否則返回false。
function isFunction(val) { return toString.call(val) === '[object Function]'; }
isDate
判斷給定的值是否為date類型。如果是范圍true,否則返回false。
function isDate(val) { return toString.call(val) === '[object Date]'; }
isFile
判斷給定的值是否為file類型。如果是范圍true,否則返回false。
function isFile(val) { return toString.call(val) === '[object File]'; }
isBlob
判斷給定的值是否為Blob類型。如果是范圍true,否則返回false。
function isBlob(val) { return toString.call(val) === '[object Blob]'; }
isStream
判斷給定的值是否為stream類型。如果是范圍true,否則返回false。
function isStream(val) { return isObject(val) && isFunction(val.pipe); }
isArrayBuffer
判斷給定的值是否為ArrayBuffer類型。如果是范圍true,否則返回false。
function isArrayBuffer(val) { return toString.call(val) === '[object ArrayBuffer]'; }
isArrayBufferView
判斷給定的值是否為ArrayBufferView類型。如果是范圍true,否則返回false。
function isArrayBufferView(val) { var result; if ((typeof ArrayBuffer !== 'undefined') && (ArrayBuffer.isView)) { result = ArrayBuffer.isView(val); } else { result = (val) && (val.buffer) && (val.buffer instanceof ArrayBuffer); } return result; }
isURLSearchParams
判斷給定的值是否為URLSearchParams類型。如果是范圍true,否則返回false。
function isURLSearchParams(val) { return typeof URLSearchParams !== 'undefined' && val instanceof URLSearchParams; }
isFormData
判斷給定的值是否為FormData類型。如果是范圍true,否則返回false。
function isFormData(val) { return (typeof FormData !== 'undefined') && (val instanceof FormData); }
迎大家多多留言討論,如有錯(cuò)誤請(qǐng)大神指教,如果你是小白也可以私信“資料”領(lǐng)取前端學(xué)習(xí)資料一起學(xué)習(xí)
篇文章主要介紹了五種JavaScript判斷是否為整數(shù)類型方式,需要的朋友可以參考下
這篇看看如何判斷為整數(shù)類型(Integer),JavaScript中不區(qū)分整數(shù)和浮點(diǎn)數(shù),所有數(shù)字內(nèi)部都采用64位浮點(diǎn)格式表示,和Java的double類型一樣。但實(shí)際操作中比如數(shù)組索引、位操作則是基于32位整數(shù)。
方式一、使用取余運(yùn)算符判斷
任何整數(shù)都會(huì)被1整除,即余數(shù)是0。利用這個(gè)規(guī)則來(lái)判斷是否是整數(shù)。
以上輸出可以看出這個(gè)函數(shù)挺好用,但對(duì)于字符串和某些特殊值顯得力不從心
對(duì)于空字符串、字符串類型數(shù)字、布爾true、空數(shù)組都返回了true,真是難以接受。對(duì)這些類型的內(nèi)部轉(zhuǎn)換細(xì)節(jié)感興趣的請(qǐng)參考:JavaScript中奇葩的假值
因此,需要先判斷下對(duì)象是否是數(shù)字,比如加一個(gè)typeof
嗯,這樣比較完美了。
方式二、使用Math.round、Math.ceil、Math.floor判斷
整數(shù)取整后還是等于自己。利用這個(gè)特性來(lái)判斷是否是整數(shù),Math.floor示例,如下
這個(gè)直接把字符串,true,[]屏蔽了,代碼量比上一個(gè)函數(shù)還少。
方式三、通過(guò)parseInt判斷
很不錯(cuò),但也有一個(gè)缺點(diǎn)
竟然返回了false,沒(méi)天理啊。原因是parseInt在解析整數(shù)之前強(qiáng)迫將第一個(gè)參數(shù)解析成字符串。這種方法將數(shù)字轉(zhuǎn)換成整型不是一個(gè)好的選擇。
方式四、通過(guò)位運(yùn)算判斷
這個(gè)函數(shù)很不錯(cuò),效率還很高。但有個(gè)缺陷,上文提到過(guò),位運(yùn)算只能處理32位以內(nèi)的數(shù)字,對(duì)于超過(guò)32位的無(wú)能為力,如
復(fù)制代碼代碼如下:
isInteger(Math.pow(2, 32)) // 32位以上的數(shù)字返回false了
當(dāng)然,多數(shù)時(shí)候我們不會(huì)用到那么大的數(shù)字。
方式五、ES6提供了Number.isInteger
目前,最新的Firefox和Chrome已經(jīng)支持。
以上就是判斷是否為整數(shù)類型的五種方式,這五種方式各有優(yōu)缺點(diǎn),大家可以進(jìn)行仔細(xì)比較,選擇最優(yōu)的進(jìn)行使用。
*請(qǐng)認(rèn)真填寫需求信息,我們會(huì)在24小時(shí)內(nèi)與您取得聯(lián)系。