三元操作员,如果有问题



已经盯着这个数天了,从第四发现它应该起作用,但总是以''为例。我正在检查可能是正面或负数的价格变化,因此> 0< 0。

 {parseInt(item.CheeseBarrelChange) > 0 ? <i className={styles.up}></i> :
 parseInt(item.CheeseBarrelChange) < 0 ? <i className={styles.down}></i>  :''} 

三元语句本身似乎没有任何问题,因此,如果条件不断失败,则认为您认为要高于或以下的数字;确保CheeseBarrelChangeparseInt不是NaN

function change(input) {
  const c = parseInt(input.value);
  const i = c > 0 ? 'up' : c < 0 ? 'down' : '';
  console.log({ change: c, icon: i});
}
<input value="0" onchange="change(this)"/>

为了检查此问题,您可以考虑将语句移动到函数中,并使用常规if或switch语句。

检查是否让我想让我思考,问题是parseint,转为parsefloat,现在可以工作。

最新更新