我想通過一個int值作爲道具。VueJS int Props改變前綴的值爲0
所以,如果我打電話:
<job-cards-create :jobno="1203"></job-cards-create>
我得到:
但是,如果我加連一個 '0' 盈:
<job-cards-create :jobno="01203"></job-cards-create>
它提供:
這是怎麼回事?我錯過了什麼嗎?
我想通過一個int值作爲道具。VueJS int Props改變前綴的值爲0
所以,如果我打電話:
<job-cards-create :jobno="1203"></job-cards-create>
我得到:
但是,如果我加連一個 '0' 盈:
<job-cards-create :jobno="01203"></job-cards-create>
它提供:
這是怎麼回事?我錯過了什麼嗎?
這是因爲你的號碼01203
被解釋爲一個八進制數,由於前導零。看看這些例子:
01203 === 643 // true
01203.toString() // "643"
你真的需要它是一個數字嗎?看起來你不會對它進行任何計算。剛收工v-bind
並使用字符串文字來代替:
<job-cards-create jobno="01203"></job-cards-create>
這是不相干的Vue我想。這是本地JS行爲:輸入到控制檯parseInt(01203,10) - >結果將是643.爲什麼 - 我不知道,希望看到有人在這裏回答。 – wostex
你是否像編寫問題那樣硬編碼值,還是來自某處? – Bert
@wostex這種行爲是由於parseInt需要一個字符串:'parseInt('01203',10) - > 1203''。你的值被強制轉換爲八進制值的字符串:'01203.toString() - >「643」' –