一般我們在寫JavaScript時,對於一個已經宣告的object,如果未曾給予其value,那麼在做
判斷是否為undefined時,可能會無法達到目的,如下:
若利用data[index] == 'undefined'是無法達到目的的,您必須使用typeof data[index],此時它會
回傳該變數的型態,如此才可以達到進入if條件。
請不要小看該運算子typeof,因為它可以協助你判斷一些情況!
2. 多維陣列的使用
假設您有一從Server端回傳回來的資料,並且在client端利用多維陣列(多分類)做儲存,
若您利用這些資料來印出資料,有時從Server端回來的某些資料可能無定義,如讀取
Server端回來得XML的語言,該語言某資料的某些屬性無資料,也許會略過存進陣列
的情況,在您要使用這些資料Array時,讀取到該欄位可能會出現error(由於該筆資料
的某項為undefined),因此可以利用typeof做條件判斷。
以上的情況您不一定會遇到,但若遇到的話,請謹記typeof的方便之處,個人的淺見!
判斷是否為undefined時,可能會無法達到目的,如下:
var data = new Array();
if(data[index] == 'undefined'){
}else{
}
若利用data[index] == 'undefined'是無法達到目的的,您必須使用typeof data[index],此時它會
回傳該變數的型態,如此才可以達到進入if條件。
請不要小看該運算子typeof,因為它可以協助你判斷一些情況!
- 使用jQuery判斷DOM Attribute使否存在
如有一按鈕<input type='button' id='showdata'>
若無show屬性被定義,則$("#showdata").attr("show")會alert回undefined
2. 多維陣列的使用
假設您有一從Server端回傳回來的資料,並且在client端利用多維陣列(多分類)做儲存,
若您利用這些資料來印出資料,有時從Server端回來的某些資料可能無定義,如讀取
Server端回來得XML的語言,該語言某資料的某些屬性無資料,也許會略過存進陣列
的情況,在您要使用這些資料Array時,讀取到該欄位可能會出現error(由於該筆資料
的某項為undefined),因此可以利用typeof做條件判斷。
以上的情況您不一定會遇到,但若遇到的話,請謹記typeof的方便之處,個人的淺見!
留言
張貼留言