日期:2014-05-16  浏览次数:20470 次

如何强制转换对象类型(从HashMap中得到的对象)为字符串?
function getWorkDailyReportInfo(){  
  var status= new HashMap();
  status.put("2308","3"); 
  var canIn = status.get("2308");  
  alert(canIn) //这里alert的值显示是3
  var canInText = "";
  if (canIn.toString()=="1"){ //这个地方判断不出来
  canInText = "未审核,不能入库"
  }
  if (canIn.toString()=="3"){
  canInText = "已审核,可以入库"
  }
  canIn.innerText=canInText  
   
}

上面如果不需要判断,直接付值的话,“3”是可以得到的。但是当我判断的时候为什么不行呢?试了好几种,都不行。
1. canIn.toString()=="1"
2. canIn=="1"
3. parseInt(canIn)==1
4. canIn = canIn + "";
  canIn=="1"

不知道这里这个对象类型应该如何转换,让我来判断啊??




------解决方案--------------------
因为canIn等于3,所以在==1的判断中返回false
------解决方案--------------------
var canIn = status.get("2308"); 取出来默认就是字符串型 所以不需要转换
if (canIn=="3"){ 这样就可以了 
你说的意思 是因为你逻辑错了 正如楼上所说