2016-11-22 87 views
1

我是相當新的JavaScript和我有這個的if/then/else if語句可有點問題。我在下面嘗試了幾件事,但被卡住了。有沒有人有任何想法?jQuery的,如果低於10做到這一點,否則,如果0做到這一點不工作

if (variant.inventory_management == "shopify" && variant.inventory_policy != "continue") { 
    if (variant.inventory_quantity < 10) { 
     $lowStockAmount.html('Last few remaining! only ' + variant.inventory_quantity + ' left'); 
    } else if (variant.inventory_quantity < 1) { 
     $lowStockAmount.html("We're sold out, Don't worry! <a href='#'>click here</a> to be notified when it's back in stock."); 
    } 
    } 

我試過== 0,但我最終得到了同樣的結果:它只顯示了剩下的最後幾個!只有0,但如果它是0,我希望它顯示售罄的消息。

+0

您應該檢查variant.inventory_quantity <1 before variant.inventory_quantity <10,因爲即使值<1也符合<10 – DinoMyte

+1

這是因爲當0小於10時,variant.inventory_quantity <10將始終返回true 0 –

回答

2

下面是一個簡單的回答你的問題。如果數量爲0,則顯示「我們已售罄」信息。否則,如果數量不是0但小於10,則顯示「剩餘的最後幾個」信息。否則,不要顯示任何東西。

var quantity = 10; 

if (quantity === 0) { 
    console.log("We're sold out, Don't worry! <a href='#'>click here</a> to be notified when it's back in stock."); 
} else if (quantity < 10) { 
    console.log('Last few remaining! only ' + quantity + ' left'); 
} 

quantity == "0"將無法​​正常工作,因爲你用字符串比較的數字。

編輯:quantity == "0"將工作,但不是比較兩個值的正確風格。

+0

感謝隊友,不得不作出一些細微的改變,但僅限於價值和如何通過,但似乎工作得很好!感謝您的幫助。 – James

+1

實際上'quantity ==「0」'將起作用,因爲== ==不檢查類型與==='對比。 – connexo

+0

@ connexo是的,你是完全正確的,但是這種編碼風格不應該是我們應該傳播的習慣,並且可能在其他情況下導致問題;) – michelgotta

1

想想現在的邏輯。如果variant.inventory_quantity爲0,則「else if」語句將永不運行,因爲只有在variant.inventory_quantity不小於10時纔會檢查它。

下面是修復程序。改變這一行:

if (variant.inventory_quantity < 10) {

這樣:

if (variant.inventory_quantity < 10 && variant.inventory_quantity > 0) {

+0

None的消息似乎現在出於某種原因顯示,所以任何0或以下顯示售罄的消息和任何10以下的東西顯示最後的剩餘...是否其他如果錯誤也許? – James

+0

你可以粘貼你的新代碼來確認沒有錯字嗎? –

+0

我剛纔又改變它,它現在:如果(variant.inventory_quantity <10 && variant.inventory_quantity> 0){$ lowStockAmount.html( '!最後僅存的唯一的' + variant.inventory_quantity + '左'); } else if(variant.inventory_quantity ==「0」|| variant.inventory_quantity <0){lowStockAmount.html(「我們賣完了,別擔心!click here當它有貨時會收到通知。 「); } – James

相關問題