Значения, которые вы получаете в isMobileDevice
, не являются логическими значениями (true
, false
), а являются строками ('true'
, 'false'
).
При оценке в булевом контексте оба значения эквивалентны true
(булево).
Вы должны сравнить isMobileDevice
со строкой:
if (isMobileDevice === 'true') {
// do something
} else {
// do something else
}
При использовании в логическом контексте (то есть как условия) false
, 0
, ""
, null
, [1112 ] и NaN
считаются false
, все остальные значения считаются true
.
Подробнее о значении truey в JavaScript: https://developer.mozilla.org/en-US/docs/Glossary/Truthy
Я исследовал бы транспортный протокол "NetNamedPipes" в WCF, который специально предназначен для той-же-машины, межпроцессного взаимодействия и который имеет наименее служебное (включая быструю двоичную сериализацию).
Marc
Проверьте пустую транспортную привязку в этой статье.