왜 rfd_total > max_rfd
이 맞습니까? 나는 rfd_total
다음 코드에 이상 max_rfd
을 수있는 방법을 이해하지 않습니다 rfd_total
max_rfd
이 문자열이기 때문에이 코드에서 한 변수가 다른 변수보다 큰 이유는 무엇입니까?
max_rfd = parseFloat(jQuery('#mx-rfd_'+order_id).val()).toFixed(2);
rfd_total = parseFloat(items_total+tax_total+shipping+allowances*1).toFixed(2);
if(rfd_total > max_rfd)
{ if(isNaN(rfd_total)) alert('rfd_total isNaN'); // not triggered
if(isNaN(max_rfd)) alert('max_rfd isNaN'); // not triggered
alert(rfd_total); // alerts 51.16
alert(max_rfd); // alerts 102.32
return false;
}
으로 제대로 기능을 사용하면 코드를 깨끗하게 유지할 수 있고 그렇게 거기에 CONSOLE.LOG (max_rfd, rdf_total)를 가져옵니다. Chrome dev-tools 또는 Firebug를 가져 와서 출력을 확인하십시오. 그들의 값과 그것들이 문자열인지 숫자인지를 볼 수 있습니다;) if 문 (if ((rfd_total * 1)> (max_rfd * 1))에서 빠른 테스트를위한 –
은 숫자로 변환해야합니다. 그러면 원하는 결과를 얻을 수 있습니다. 그런 다음 parseFloat를 대체하여 초기 변수를 적용합니다. 편집 : 그리핀 toFixed() 문자열을 반환합니다 지적했다. 그 방법을 사용하려면 toFixed() 뒤에 1을 곱하십시오. –
@MikeDepies rfd_total 설정에서 * 1 접근 방식을 사용했지만, 내가 얻지 못하는 이유는 isNaN (rfd_total) NOR isNaN (max_rfd)이 true를 반환하는 이유입니다. – WallabyKid