В JS-коде имеется такая функция:
function checkVal( num) {
var val = id('me' + num).value;
if(isNaN( val ))
alert(val + ' не является числом.')
else {
if((function(x) { return (x | 0) === x; })(parseFloat( val)) === (function(x) { return (x | 0) === x; })(parseFloat(String( id(fullScale_0).value))))
alert('Не верный формат.' + val )
else
id('regReading_' + num).value = val;
}
}
Код работает, но я не понимаю логику условия во вложенной инструкции if(). А именно:
- Почему три логических выражения в условии перечислены без всяких разделителей или логических операторов;
- Откуда берётся значение "х" в функциональных выражениях function(x).
(function(x) { return (x | 0) === x; })(parseFloat( val))значит что в качестве аргумента x передается результатparseFloat( val). – u_mulder Sep 07 '21 at 11:26