[JavaScirpt] 判斷 null , undefined 小測試筆記

2012-10-04

 

 

最近有碰到,直接筆記一下..

400px-WikiBookTitel_JavaScript

 
 
 
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <title></title>
    <script src="http://code.jquery.com/jquery-1.8.2.min.js"></script>
   1:  
   2:  
   3: </head>
   4: <body>
   5:  
   6:     <span id="span_result"></span>
   7:     <script type="text/javascript">
   8:  
   9:         var data = { Name: 'Donma', Desc: '', Age: null };
  10:  
  11:         $('#span_result').append('data.Name == null  : ' + (data.Name == null).toString() + "<br />");
  12:         $('#span_result').append('data.Name === null  : ' + (data.Name === null).toString() + "<br />" );
  13:         $('#span_result').append('data.Name !=null  : ' + (data.Name != null).toString() + "<br />");
  14:         $('#span_result').append('data.Name !== null  : ' + (data.Name !== null).toString() + "<br />");
  15:         $('#span_result').append('data.Name == undefined  : ' + (data.Name == undefined).toString() + "<br />");
  16:         $('#span_result').append('data.Name === undefined  : ' + (data.Name === undefined).toString() + "<br />");
  17:         $('#span_result').append("<br />");
  18:  
  19:         $('#span_result').append('data.Desc == null  : ' + (data.Desc == null).toString() + "<br />");
  20:         $('#span_result').append('data.Desc === null  : ' + (data.Desc === null).toString() + "<br />" );
  21:         $('#span_result').append('data.Desc != null  : ' + (data.Desc != null).toString() + "<br />" );
  22:         $('#span_result').append('data.Desc !== null  : ' + (data.Desc !== null).toString() + "<br />");
  23:         $('#span_result').append('data.Desc == undefined  : ' + (data.Desc == undefined).toString() + "<br />");
  24:         $('#span_result').append('data.Desc === undefined  : ' + (data.Desc === undefined).toString() + "<br />");
  25:         $('#span_result').append("<br />");
  26:         
  27:         $('#span_result').append('data.Intro == null  : ' + (data.Intro == null).toString() + "<br />");
  28:         $('#span_result').append('data.Intro === null  : ' + (data.Intro === null).toString() + "<br />");
  29:         $('#span_result').append('data.Intro != null  : ' + (data.Intro != null).toString() + "<br />" );
  30:         $('#span_result').append('data.Intro !== null  : ' + (data.Intro !== null).toString() + "<br />");
  31:         $('#span_result').append('data.Intro == undefined  : ' + (data.Intro == undefined).toString() + "<br />");
  32:         $('#span_result').append('data.Intro === undefined  : ' + (data.Intro === undefined).toString() + "<br />");
  33:         $('#span_result').append("<br />");
  34:       
  35:         $('#span_result').append('data.Age == null  : ' + (data.Age == null).toString() + "<br />");
  36:         $('#span_result').append('data.Age === null  : ' + (data.Age === null).toString() + "<br />");
  37:         $('#span_result').append('data.Age != null  : ' + (data.Age != null).toString() + "<br />");
  38:         $('#span_result').append('data.Age !== null  : ' + (data.Age !== null).toString() + "<br />" );
  39:         $('#span_result').append('data.Age == undefined  : ' + (data.Age == undefined).toString() + "<br />");
  40:         $('#span_result').append('data.Age === undefined  : ' + (data.Age === undefined).toString() + "<br />");
  41:         $('#span_result').append("<br />");
  42:  
  43:     
</script>
</body>
</html>

 


結果:





data.Name == null : false
ata.Name === null : false
ata.Name !=null : true
ata.Name !== null : true
ata.Name == undefined : false
ata.Name === undefined : false

ata.Desc == null : false
ata.Desc === null : false
ata.Desc != null : true
ata.Desc !== null : true
ata.Desc == undefined : false
ata.Desc === undefined : false

ata.Intro == null : true
ata.Intro === null : false
ata.Intro != null : false
ata.Intro !== null : true
ata.Intro == undefined : true
ata.Intro === undefined : true

ata.Age == null : true
ata.Age === null : true
ata.Age != null : false
ata.Age !== null : false
ata.Age == undefined : true
ata.Age === undefined : false




因為=== 還會判斷型別問題,所以在根本沒有那屬性的情況下 也就是上述例子的 Intro屬性在 === 會呈現false


這點需要注意一下..


當麻許的超技八 2014 | Donma Hsu Design.