JavaScript判斷變量是否為空的自定義函數(shù)分享
JavaScript本身沒有判斷一個(gè)變量是不是空值的函數(shù),因?yàn)樽兞坑锌赡苁莝tring,object,number,boolean等類型,類型不同,判斷方法也不同。所以在文章中寫了一個(gè)函數(shù),用以判斷JS變量是否空值,如果是undefined, null, '', NaN,false,0,[],{} ,空白字符串,都返回true,否則返回false
function isEmpty(v) {
switch (typeof v) {
case 'undefined':
return true;
case 'string':
if (v.replace(/(^[ \t\n\r]*)|([ \t\n\r]*$)/g, '').length == 0) return true;
break;
case 'boolean':
if (!v) return true;
break;
case 'number':
if (0 === v || isNaN(v)) return true;
break;
case 'object':
if (null === v || v.length === 0) return true;
for (var i in v) {
return false;
}
return true;
}
return false;
}
測(cè)試:
isEmpty() //true
isEmpty([]) //true
isEmpty({}) //true
isEmpty(0) //true
isEmpty(Number("abc")) //true
isEmpty("") //true
isEmpty(" ") //true
isEmpty(false) //true
isEmpty(null) //true
isEmpty(undefined) //true
- 淺談JavaScript函數(shù)的四種存在形態(tài)
- JavaScript中判斷函數(shù)、變量是否存在
- javascript版的in_array函數(shù)(判斷數(shù)組中是否存在特定值)
- js 判斷js函數(shù)、變量是否存在的簡(jiǎn)單示例代碼
- Javascript 判斷是否存在函數(shù)的方法
- JavaScript基于自定義函數(shù)判斷變量類型的實(shí)現(xiàn)方法
- JS自定義函數(shù)對(duì)web前端上傳的文件進(jìn)行類型大小判斷
- 判斷數(shù)組是否包含某個(gè)元素的js函數(shù)實(shí)現(xiàn)方法
- JavaScript判斷頁(yè)面加載完之后再執(zhí)行預(yù)定函數(shù)的技巧
- javascript判斷css3動(dòng)畫結(jié)束 css3動(dòng)畫結(jié)束的回調(diào)函數(shù)
- JavaScript中判斷變量是數(shù)組、函數(shù)或是對(duì)象類型的方法
- JavaScript中判斷原生函數(shù)檢查function是否是原生代碼
- JS簡(jiǎn)單判斷函數(shù)是否存在的方法
相關(guān)文章
利用d3.js力導(dǎo)布局繪制資源拓?fù)鋱D實(shí)例教程
這篇文章主要給大家介紹了關(guān)于如何利用d3.js力導(dǎo)布局繪制資源拓?fù)鋱D的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-01-01jQuery實(shí)現(xiàn)頁(yè)面頂部下拉廣告
本文主要分享了jQuery實(shí)現(xiàn)頁(yè)面頂部下拉廣告的具體代碼。具有一定的參考價(jià)值,下面跟著小編一起來(lái)看下吧2016-12-12javascript實(shí)現(xiàn)將數(shù)字轉(zhuǎn)成千分位的方法小結(jié)【5種方式】
這篇文章主要介紹了javascript實(shí)現(xiàn)將數(shù)字轉(zhuǎn)成千分位的方法,結(jié)合實(shí)例形式分析了5種常用的數(shù)字轉(zhuǎn)換的常用方法,涉及字符串與正則操作的相關(guān)技巧,需要的朋友可以參考下2016-12-12JavaScript設(shè)計(jì)模式經(jīng)典之命令模式
命令模式(Command)的定義是:用來(lái)對(duì)方法調(diào)用進(jìn)行參數(shù)化處理和傳送,經(jīng)過(guò)這樣處理過(guò)的方法調(diào)用可以在任何需要的時(shí)候執(zhí)行。接下來(lái)通過(guò)本文給大家介紹JavaScript設(shè)計(jì)模式經(jīng)典之命令模式,需要的朋友參考下2016-02-02JavaScript截取字符串的2個(gè)函數(shù)介紹
這篇文章主要介紹了JavaScript截取字符串的2個(gè)函數(shù)介紹,它們分別是substring和substr函數(shù),本文用實(shí)例講解了它們的用法,需要的朋友可以參考下2014-08-08解決layui調(diào)用自定義方法提示未定義的問(wèn)題
今天小編就為大家分享一篇解決layui調(diào)用自定義方法提示未定義的問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2019-09-09vue 集成騰訊地圖實(shí)現(xiàn)api(附DEMO)
之前項(xiàng)目使用騰訊地圖,不利于開發(fā)者查找,這篇文章主要介紹了vue 集成騰訊地圖實(shí)現(xiàn)api,具有一定的參考價(jià)值,感興趣的可以了解下2021-07-07javascript使用遞歸算法求兩個(gè)數(shù)字組合功能示例
這篇文章主要介紹了javascript使用遞歸算法求兩個(gè)數(shù)字組合功能,結(jié)合實(shí)例形式分析了JS基于遞歸算法的數(shù)組遍歷、判斷、轉(zhuǎn)換等相關(guān)操作技巧,需要的朋友可以參考下2017-01-01給Flash加一個(gè)超鏈接(推薦使用透明層)兼容主流瀏覽器
給一個(gè)Flash加一個(gè)超鏈接,原想直接在object外直接套一個(gè)超鏈接即可,試了之后卻發(fā)現(xiàn)不是這么回事2013-06-06