27 lines
820 B
TypeScript
27 lines
820 B
TypeScript
export function usePrice(price: number, digit = true, unit = 'ریال') {
|
|||
|
|
price= price??0
|
||
|
|
let _price = price.toString()
|
||
|
|
if (digit) {
|
||
|
|
_price = _price.toString().replace(/\B(?=(\d{3})+(?!\d))/g, ',')
|
||
|
|
}
|
||
|
|
return `${_price} ${unit}`
|
||
|
|
}
|
||
|
|
|
||
|
|
export function usePriceWithoutType(price?: number, digit = true, unit = 'ریال') {
|
||
|
|
let _price = price?.toString()
|
||
|
|
if (digit) {
|
||
|
|
_price = _price?.toString().replace(/\B(?=(\d{3})+(?!\d))/g, ',')
|
||
|
|
}
|
||
|
|
return `${_price}`
|
||
|
|
}
|
||
|
|
|
||
|
|
export function useTowDecimal(num: string | number): string | number {
|
||
|
|
const temp = num.toString().match(/^-?\d+(?:\.\d{0,2})?/)
|
||
|
|
if (temp && temp.length > 0) return temp[0]
|
||
|
|
return Math.round(+num * 100) / 100
|
||
|
|
}
|
||
|
|
|
||
|
|
export function useFormat(num: string | number, unit = '') {
|
||
|
|
return usePrice(Math.abs(+useTowDecimal(num)), true, unit)
|
||
|
|
}
|