У меня есть очень, очень простой логический тест количества лицензий клиент приобрел по сравнению с числом, они использовали:Оператор JavaScript IF, неправильно оценивающий TRUE - почему?
else if(utype == "3"){
var tech_lic = $("#technician_lic").val();
console.log('tech lic = ' + tech_lic)
var tech_allow = $("#technician_lic_allow").val();
console.log('tech allow = ' + tech_allow)
if(tech_lic >= tech_allow)
{
alert("You must purchase more licenses to create this Technician");
return false;
}
я бросил в console.log заявления, пытаясь отладки это - обычно они не существует.
console.log, когда я нажимаю кнопку «Добавить»:
tech lic = 4 application.js:262
tech allow = 100 application.js:264
Затем мы попали «Вы должны приобрести дополнительные лицензии» предупреждение в окне.
ЧТО ТАКОЕ HECK?
Как 4> = 100 оценить истину?
Параметр 'if' заявление делает правильную оценку. Это лексикографическое сравнение, и, как таковое, возвращает true, поскольку «4» больше, чем «100». –