js判斷undefined類型示例代碼
更新時(shí)間:2014年02月10日 11:31:01 作者:
這篇文章主要介紹了js判斷undefined類型的實(shí)現(xiàn)方法,需要的朋友可以參考下
復(fù)制代碼 代碼如下:
if (reValue== undefined){
alert("undefined");
}
發(fā)現(xiàn)判斷不出來(lái),最后查了下資料要用typeof方法:
if (typeof(reValue) == "undefined") {
alert("undefined");
}
typeof 返回的是字符串,有六種可能:"number"、"string"、"boolean"、"object"、"function"、"undefined"
3.4 數(shù)據(jù)類型
ECMAScript中有 5種簡(jiǎn)單數(shù)據(jù)類型(也稱為基本數(shù)據(jù)類型):Undefined、Null、Boolean、Number 和String。還有 1種復(fù)雜數(shù)據(jù)類型——Object,Object 本質(zhì)上是由一組無(wú)序的名值對(duì)組成的。ECMAScript 不支持任何創(chuàng)建自定義類型的機(jī)制,而所有值終都將是上述 6種數(shù)據(jù)類型之一。乍一看,好像只有 6 種數(shù)據(jù)類型不足以表示所有數(shù)據(jù);但是,由于 ECMAScript數(shù)據(jù)類型具有動(dòng)態(tài)性,因此的確沒(méi)有再定義 其他數(shù)據(jù)類型的必要了。
3.4.1 typeof操作符
鑒于 ECMAScript 是松散類型的,因此需要有一種手段來(lái)檢測(cè)給定變量的數(shù)據(jù)類型——typeof 就 是負(fù)責(zé)提供這方面信息的操作符。對(duì)一個(gè)值使用 typeof 操作符可能返回下列某個(gè)字符串: "undefined"——如果這個(gè)值未定義; "boolean"——如果這個(gè)值是布爾值; "string"——如果這個(gè)值是字符串;
24 第 3章 基本概念
"number"——如果這個(gè)值是數(shù)值; "object"——如果這個(gè)值是對(duì)象或 null; "function"——如果這個(gè)值是函數(shù)。 下面是幾個(gè)使用 typeof 操作符的例子:
var message = "some string"; alert(typeof message); // "string" alert(typeof(message)); // "string" alert(typeof 95); // "number"
TypeofExample01.htm
這幾個(gè)例子說(shuō)明,typeof 操作符的操作數(shù)可以是變量(message),也可以是數(shù)值字面量。注意, typeof 是一個(gè)操作符而不是函數(shù),因此例子中的圓括號(hào)盡管可以使用,但不是必需的。 有些時(shí)候,typeof 操作符會(huì)返回一些令人迷惑但技術(shù)上卻正確的值。比如,調(diào)用 typeof null 會(huì)返回"object",因?yàn)樘厥庵?null 被認(rèn)為是一個(gè)空的對(duì)象引用。Safari 5及之前版本、Chrome 7及之 前版本在對(duì)正則表達(dá)式調(diào)用 typeof 操作符時(shí)會(huì)返回"function",而其他瀏覽器在這種情況下會(huì)返回 "object"。
從技術(shù)角度講,函數(shù)在 ECMAScript中是對(duì)象,不是一種數(shù)據(jù)類型。然而,函數(shù)也 確實(shí)有一些特殊的屬性,因此通過(guò) typeof 操作符來(lái)區(qū)分函數(shù)和其他對(duì)象是有必要的。
復(fù)制代碼 代碼如下:
function test1(){
var message;
if(typeof(message)=="undefined")
alert("變量值未定義");
else
alert(message);
}
var cc=test1;
cc();
相關(guān)文章
JavaScript實(shí)現(xiàn)的一個(gè)日期格式化函數(shù)分享
這篇文章主要介紹了JavaScript實(shí)現(xiàn)的一個(gè)日期格式化函數(shù)分享,本文給出了實(shí)現(xiàn)代碼和使用例子,需要的朋友可以參考下2014-12-12
如何使用big.js解決JavaScript浮點(diǎn)數(shù)精度丟失問(wèn)題
最近在項(xiàng)目中涉及到金額從元轉(zhuǎn)為分(乘100即可),發(fā)現(xiàn)乘法居然也會(huì)有精度丟失的問(wèn)題,關(guān)于浮點(diǎn)數(shù)計(jì)算精度丟失是很多語(yǔ)言都存在的問(wèn)題,本文給大家分享使用big.js解決JavaScript浮點(diǎn)數(shù)精度丟失問(wèn)題,感興趣的朋友一起看看吧2023-12-12
用JavaScript實(shí)現(xiàn)仿Windows關(guān)機(jī)效果
用JavaScript實(shí)現(xiàn)仿Windows關(guān)機(jī)效果...2007-03-03
一文徹底講通JavaScript普通函數(shù)與箭頭函數(shù)的區(qū)別
JavaScript中的箭頭函數(shù)和普通函數(shù)在語(yǔ)法和特性上有一些關(guān)鍵的區(qū)別,這篇文章主要介紹了JavaScript普通函數(shù)與箭頭函數(shù)區(qū)別的相關(guān)資料,文中通過(guò)代碼介紹的非常詳細(xì),需要的朋友可以參考下2025-10-10
深入理解JavaScript系列(26):設(shè)計(jì)模式之構(gòu)造函數(shù)模式詳解
這篇文章主要介紹了深入理解JavaScript系列(26):設(shè)計(jì)模式之構(gòu)造函數(shù)模式詳解,本文講解了基本用法、構(gòu)造函數(shù)與原型、只能用new嗎?、強(qiáng)制使用new、原始包裝函數(shù)等內(nèi)容,需要的朋友可以參考下2015-03-03
JavaScript實(shí)現(xiàn)與使用發(fā)布/訂閱模式詳解
這篇文章主要介紹了JavaScript實(shí)現(xiàn)與使用發(fā)布/訂閱模式,較為詳細(xì)的分析了發(fā)布/訂閱模式的概念、原理并結(jié)合實(shí)例形式分析了javascript實(shí)現(xiàn)與使用發(fā)布/訂閱模式的相關(guān)操作技巧,需要的朋友可以參考下2019-01-01
js實(shí)現(xiàn)盒子滾動(dòng)動(dòng)畫效果
這篇文章主要為大家詳細(xì)介紹了js實(shí)現(xiàn)盒子滾動(dòng)動(dòng)畫效果,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2020-08-08

