Skip to content

Commit

Permalink
fix(padStart): add padStart function
Browse files Browse the repository at this point in the history
  • Loading branch information
iamkun committed Apr 12, 2018
1 parent ca9fbe8 commit a5a2208
Showing 1 changed file with 11 additions and 6 deletions.
17 changes: 11 additions & 6 deletions src/index.js
Original file line number Diff line number Diff line change
@@ -1,12 +1,17 @@
import * as Constant from './constant'

const padStart = (string, length, pad) => {
if (!string || string.length >= length) return string
return `${Array((length + 1) - string.length).join(pad)}${string}`
}

class Dayjs {
constructor(config) {
this.utc = false
const args = this.parseConfig(config)
this.date = new Date(args)
this.timeZone = this.date.getTimezoneOffset() / 60
this.timeZoneString = String(this.timeZone * -1).replace(/^(.)?(\d)/, '$10$200').padStart(5, '+')
this.timeZoneString = padStart(String(this.timeZone * -1).replace(/^(.)?(\d)/, '$10$200'), 5, '+')
this.mYear = this.date.getFullYear()
this.mMonth = this.date.getMonth()
this.mDay = this.date.getDate()
Expand Down Expand Up @@ -100,27 +105,27 @@ class Dayjs {
case 'M':
return String(this.mMonth + 1)
case 'MM':
return String(this.mMonth + 1).padStart(2, '0')
return padStart(String(this.mMonth + 1), 2, '0')
case 'D':
return String(this.mDay)
case 'DD':
return String(this.mDay).padStart(2, '0')
return padStart(String(this.mDay), 2, '0')
case 'd':
return String(this.mWeek)
case 'dddd':
return weeks[this.mWeek]
case 'H':
return String(this.mHour)
case 'HH':
return String(this.mHour).padStart(2, '0')
return padStart(String(this.mHour), 2, '0')
case 'm':
return String(this.mMinute)
case 'mm':
return String(this.mMinute).padStart(2, '0')
return padStart(String(this.mMinute), 2, '0')
case 's':
return String(this.mSecond)
case 'ss':
return String(this.mSecond).padStart(2, '0')
return padStart(String(this.mSecond), 2, '0')
case 'Z':
return this.timeZoneString.replace('00', ':00')
case 'ZZ':
Expand Down

0 comments on commit a5a2208

Please sign in to comment.