字符串補0的一個簡單方法


問題描述

字符串補0是常見的需求,比如日期不足2位補0,數字精度不足補0等,需求是給一個數字和一個小數精度返回一個帶有特定精度的數字字符串

問題分析

字符串補0操作可以考慮切割字符串操作,參考:substr() 方法

問題解決

  1. 先看一個日期補0的方法:
function padStart(str){
   return ('0' + str).substr(-2)
}

padStart(2) // 02
padStart(10) // 10
  1. 方法延伸,輸出固定長度,不足的前面補0
function padStart(str, len){
   return ('0000000000000000' + str).substr(-len)
}

padStart(2, 4) // 0002
padStart(10, 4) // 0010
  1. 后綴補0保持精度
function padEnd(val, pre) {
	if(!isNaN(val) && isFinite(val)) {
		let parts = val.toString().split('.')
		let pad = '0000000000000000'
		// let pad = Array(pre + 1).join('0')
		if(parts[1]) {
			pad = parts[1] + pad
		}
		pad = pad.substr(0, pre)
		return  parts[0] + '.' + pad
	}
	return ''
}

padEnd(8, 4) // 8.0000
padEnd(3.5, 4) // 3.5000
padEnd(1.23456, 4) // 1.2345


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM