2015-09-01 38 views
0

我計算年齡從出生日期,但是當我返回值是顯示「0」爲更多參見下面的代碼更換零(整數)與空間(字符串)與JavaScript

var birth = new Date('DOB'); 
var curr = new Date(); 
var age; // this is integer type in database 
if(birth != null) 
{ 
    var diff = curr - birth; 
    age= Math.floor(diff/(1000 * 60 * 60 * 24 * 365.25)); 
} else { 
    age=' '; // while i return space from here it shows '0' on my output 
} 

我該怎麼讓空間insted的'0'

+0

你的代碼是不完整的,所以這裏沒什麼用。 R2來自哪裏?什麼是「年齡」與「年齡」? '出生'怎麼樣?你怎麼輸出這個? –

+0

刪除'else'塊並添加'if(AGE === 0)AGE ='';' – hindmost

+0

'birth'的值是什麼? – David

回答

0

將其替換爲'null'null。它不是字符串。

var curr = new Date(); 
var age; // this is integer type in database 
    if(R2 != null && R2 != undefined) 
    { 
     var diff = curr - birth; 
    AGE= Math.floor(diff/(1000 * 60 * 60 * 24 * 365.25)); 
}else 
AGE=' '; // while i return space from here it shows '0' on my output 
} 
0

我對代碼做了很少的修改,因爲我不能修改它的結構。主要的變化是檢查age是零還是小於零,因爲如果出生日期在過去一年或將來,原始代碼確實返回0或甚至負數。這應該工作。

var birth = new Date('DOB'); 
var curr = new Date(); 
var age; // this is integer type in database 
if (birth != null) 
{ 
    var diff = curr - birth; 
    age = Math.floor(diff/(1000 * 60 * 60 * 24 * 365.25)); 
    if (age < 1) { 
     age = ' '; 
    } 
} else { 
    age = ' '; // while i return space from here it shows '0' on my output 
}