求解答,有一個字串1.0.0,怎么讓點位數+1成為1.0.1, 例子:1.0.4成為1.0.5
uj5u.com熱心網友回復:
parseFloat(str)+0.01uj5u.com熱心網友回復:
真好給我閑的……假設你這個是版本號了

function updateVarsion (version: string, index = 0): string {
/** 分隔的陣列 */
const arr = version.split('.')
/** 需要操作的索引號 */
const updateIndex = arr.length - (1 + index)
/** 下一個值 */
const nextVersion = Number(arr[updateIndex]) + 1
/** 各級最大值,超出的就升位:這是反著來的,最后的在最前定義;不需要的就把關聯的代碼洗掉即可 */
const maxVersion = [ 10, 10, 100 ]
// 當前節點超限,歸零,升位
if (nextVersion > maxVersion[index]) {
arr[updateIndex] = '0'
return updateVarsion(arr.join('.'), index + 1)
}
arr[updateIndex] = String(nextVersion)
return arr.join('.')
}
// 末尾項升值 => 1.0.10
console.log(updateVarsion('1.0.9'))
// 升至中間項 => 1.1.0
console.log(updateVarsion('1.0.10'))
// 由末尾項升級首位項了 => 2.0.0
console.log(updateVarsion('1.10.10'))
// 直接操作中間項 => 1.2.10
console.log(updateVarsion('1.1.10', 1))
uj5u.com熱心網友回復:
parseFloat()
parseFloat() 方法與 parseInt() 方法的處理方式相似,從位置 0 開始查看每個字符,直到找到第一個非有效的字符為止,然后把該字符之前的字串轉換成整數。
不過,對于這個方法來說,第一個出現的小數點是有效字符。如果有兩個小數點,第二個小數點將被看作無效的。parseFloat() 會把這個小數點之前的字符轉換成數字。這意味著字串 "11.22.33" 將被決議成 11.22。
使用 parseFloat() 方法的另一不同之處在于,字串必須以十進制形式表示浮點數,而不是用八進制或十六進制。該方法會忽略前導 0,所以八進制數 0102 將被決議為 102。對于十六進制數 0xA,該方法將回傳 NaN,因為在浮點數中,x 不是有效字符。(注釋:經測驗,具體的瀏覽器實作會回傳 0,而不是 NaN。)
此外,parseFloat() 方法也沒有基模式。
下面是使用 parseFloat() 方法的一些示例:
var fNum4 = parseFloat("11.22.33");
轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/274316.html
標籤:JavaScript
上一篇:element走馬燈樣式改造
