JS判斷變量是否為空判斷是否null
null:空類型。它是JavaScript五種原始類型(boolean、number、string、null、undefined)中的一種。該原始類型僅有一個(gè)值:null。
JavaScript 判斷空值、NULL、undefined的方法
JavaScript 如果要判斷變量是否已定義,可以使用 typeof:
實(shí)例
if(typeof someVar == 'undefined') { ? document.write("變量 someVar 未定義"); } else { ? document.write("變量 someVar 已定義"); }
JavaScript 如果只想判斷已定義變量是否為 true 可以直接使用以下方法:
實(shí)例
if (strValue) { ? ? // strValue 為 true 執(zhí)行的代碼 } else { ? ? // strValue 為 false 執(zhí)行的代碼 }
以下使用正則的方法判斷變量是否已定義并且不為空,比較完整的方法:
實(shí)例
if ( // 返回判斷的值 ? ? ? ? (typeof x == 'undefined') ? ? ? ? ? ? ? || ? ? ? ? (x == null) ? ? ? ? ? ? ? || ? ? ? ? (x == false) ? ? ? ?//類似: !x ? ? ? ? ? ? ? || ? ? ? ? (x.length == 0) ? ? ? ? ? ? ? || ? ? ? ? (x == 0) ? ? ? ? ? ?// 這里是判斷 0,不需要刻意去掉 ? ? ? ? ? ? ? || ? ? ? ? (x == "") ? ? ? ? ? ? ? || ? ? ? ? (x.replace(/\s/g,"") == "") ? ? ? ? ? ? ? || ? ? ? ? (!/[^\s]/.test(x)) ? ? ? ? ? ? ? || ? ? ? ? (/^\s*$/.test(x)) ? ? ) { ? document.write("變量未定義或?yàn)榭?); }
也可以封裝一個(gè)方法來判斷,包含了空值、0、false 等,適用已定義的變量:
實(shí)例
function empty(e) { ? switch (e) { ? ? case "": ? ? case 0: ? ? case "0": ? ? case null: ? ? case false: ? ? case undefined: ? ? ? return true; ? ? default: ? ? ? return false; ? } } empty(null) // true empty(0) // true empty(7) // false empty("") // true empty((function() { ? ? return "" })) // false
在鑒別JavaScript原始類型的時(shí)候我們會(huì)用到typeof操作符。
Typeof操作符可用于字符串、數(shù)字、布爾和未定義類型。****但是你運(yùn)行typeof null時(shí),結(jié)果是“object”(在邏輯上,你可以認(rèn)為null是一個(gè)空的對象指針,所以結(jié)果為“object”)。
判斷一個(gè)值是否為空類型的最佳方法是直接和null比較:
value === null; //true or false
if(show.isProfitSplit !== null) { filterModel.isProfitSplit = Number(show.isProfitSplit); }
這里使用的是三等號(hào)操作符(===)而不是雙等號(hào)。三等號(hào)操作符在進(jìn)行比較的時(shí)候不會(huì)將變量強(qiáng)制轉(zhuǎn)換為另一種類型。
當(dāng)你比較undefined 和 null的時(shí)候,雙等號(hào)會(huì)認(rèn)為他們相等,三等號(hào)認(rèn)為不相等。三等號(hào)認(rèn)為這兩個(gè)值類型不同。例子如下:
undefined == null; //true console.log(undefined == null); undefined === null; //false console.log(undefined === null);
今天看到一個(gè)判斷值是否沒空的方法
var jb51="" if(jb51){ document.write('jb51變量不為空'); }else{ document.write('jb51變量為空'); }
/** * 判斷是否null * @param data */ function isNull(data){ return (data == "" || data == undefined || data == null) ? "暫無" : data; }
到此這篇關(guān)于JS判斷變量是否為空判斷是否null的文章就介紹到這了,更多相關(guān)JS判斷變量是否為空內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- js判斷數(shù)據(jù)類型如判斷是否為數(shù)組是否為字符串等等
- javascript中的五種基本數(shù)據(jù)類型
- js 數(shù)據(jù)類型轉(zhuǎn)換總結(jié)筆記
- C#實(shí)現(xiàn)任意數(shù)據(jù)類型轉(zhuǎn)成json格式輸出
- Js從頭學(xué)起(基本數(shù)據(jù)類型和引用類型的參數(shù)傳遞詳細(xì)分析)
- js 判斷各種數(shù)據(jù)類型的簡單方法(推薦)
- js delete 用法(刪除對象屬性及變量)
- 基于JavaScript 聲明全局變量的三種方式詳解
- JS中的this變量的使用介紹
- JavaScript數(shù)據(jù)類型和變量_動(dòng)力節(jié)點(diǎn)Java學(xué)院整理
相關(guān)文章
JavaScript點(diǎn)擊按鈕生成4位隨機(jī)驗(yàn)證碼
這篇文章主要為大家詳細(xì)介紹了JavaScript點(diǎn)擊按鈕生成4位隨機(jī)驗(yàn)證碼,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-01-01JS獲取select的value和text值的簡單實(shí)例
本篇文章主要是對JS獲取select的value和text值的簡單實(shí)例進(jìn)行了介紹,需要的朋友可以過來參考下,希望對大家有所幫助2014-02-02js關(guān)閉瀏覽器窗口及檢查瀏覽器關(guān)閉事件
js關(guān)閉瀏覽器窗口,不彈出提示框。支持ie6+,火狐,谷歌等瀏覽器,下面以一個(gè)示例為大家詳細(xì)介紹下具體的實(shí)現(xiàn)方法,感興趣的朋友可以參考下2013-09-09鼠標(biāo)拖動(dòng)動(dòng)態(tài)改變表格的寬度的js腳本 兼容ie/firefox
table拖動(dòng)(兼容Firefox 3.5/IE6),固定表格寬度在網(wǎng)上搜索了好久,找到的都是只能在IE下有效的,后來終于找到了支持firefox的了。2009-12-12JS實(shí)現(xiàn)在文本指定位置插入內(nèi)容的簡單示例
下面小編就為大家分享一篇JS實(shí)現(xiàn)在文本指定位置插入內(nèi)容的簡單示例,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2017-12-12微信小程序--onShareAppMessage分享參數(shù)用處(頁面分享)
本篇文章主要介紹了微信小程序的頁面分享onShareAppMessage分享參數(shù)用處的相關(guān)資料。具有很好的參考價(jià)值。下面跟著小編一起來看下吧2017-04-04