[英]Ternary Operator if else if issue
盯着它看了好幾天,iv的一切發現它都應該起作用,但總是以''結尾。 我正在檢查可以為正或為負的價格變化,因此> 0 <0。
{parseInt(item.CheeseBarrelChange) > 0 ? <i className={styles.up}></i> :
parseInt(item.CheeseBarrelChange) < 0 ? <i className={styles.down}></i> :''}
三元語句本身似乎沒有什么不對,因此,如果條件持續失敗且您認為數字大於零或小於零,則該數字為零。 確保CheeseBarrelChange
的parseInt
結果不是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語句。
檢查是否是我得到NaN引起了我的思考,問題是ParseInt,切換到parseFloat,現在可以使用了。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.