JavaScriptClass:简单条件(三元)运算符 returns 错误结果
JavaScriptClass : Simple conditional (ternary) Operator returns wrong result
我有以下代码,使用三元运算符来判断值是真还是假。
我的预期结果是 pp 是真的 ,但是我得到的结果是假的。
怎么会这样?这对我来说没有意义。
const test = (x) => {
(x === 1) ? true : false;
}
let pp = test(1); // SHOULD BE TRUE
if (pp) {console.log('pp is true')}
else {console.log('pp is false')}; // PRINTS FALSE, BUT SHOULD BE TRUE
您需要 return boolean
:
const test = (x) => {
return (x === 1) ? true : false;
}
let pp = test(1);
if (pp) {console.log('pp is true')}
else {console.log('pp is false')};
括号{}你需要在正文中添加"return"
const test = (x) => {
return (x === 1) ? true : false;
}
或不带括号
const test = (x) => (x === 1) ? true : false;
我有以下代码,使用三元运算符来判断值是真还是假。
我的预期结果是 pp 是真的 ,但是我得到的结果是假的。
怎么会这样?这对我来说没有意义。
const test = (x) => {
(x === 1) ? true : false;
}
let pp = test(1); // SHOULD BE TRUE
if (pp) {console.log('pp is true')}
else {console.log('pp is false')}; // PRINTS FALSE, BUT SHOULD BE TRUE
您需要 return boolean
:
const test = (x) => {
return (x === 1) ? true : false;
}
let pp = test(1);
if (pp) {console.log('pp is true')}
else {console.log('pp is false')};
括号{}你需要在正文中添加"return"
const test = (x) => {
return (x === 1) ? true : false;
}
或不带括号
const test = (x) => (x === 1) ? true : false;