Blame view

node_modules/moment/src/lib/units/millisecond.js 1.78 KB
ce4c83ff   wxy   初始提交
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
  import { makeGetSet } from '../moment/get-set';
  import { addFormatToken } from '../format/format';
  import { addUnitAlias } from './aliases';
  import { addUnitPriority } from './priorities';
  import { addRegexToken, match1, match2, match3, match1to3, matchUnsigned } from '../parse/regex';
  import { addParseToken } from '../parse/token';
  import { MILLISECOND } from './constants';
  import toInt from '../utils/to-int';
  
  // FORMATTING
  
  addFormatToken('S', 0, 0, function () {
      return ~~(this.millisecond() / 100);
  });
  
  addFormatToken(0, ['SS', 2], 0, function () {
      return ~~(this.millisecond() / 10);
  });
  
  addFormatToken(0, ['SSS', 3], 0, 'millisecond');
  addFormatToken(0, ['SSSS', 4], 0, function () {
      return this.millisecond() * 10;
  });
  addFormatToken(0, ['SSSSS', 5], 0, function () {
      return this.millisecond() * 100;
  });
  addFormatToken(0, ['SSSSSS', 6], 0, function () {
      return this.millisecond() * 1000;
  });
  addFormatToken(0, ['SSSSSSS', 7], 0, function () {
      return this.millisecond() * 10000;
  });
  addFormatToken(0, ['SSSSSSSS', 8], 0, function () {
      return this.millisecond() * 100000;
  });
  addFormatToken(0, ['SSSSSSSSS', 9], 0, function () {
      return this.millisecond() * 1000000;
  });
  
  
  // ALIASES
  
  addUnitAlias('millisecond', 'ms');
  
  // PRIORITY
  
  addUnitPriority('millisecond', 16);
  
  // PARSING
  
  addRegexToken('S',    match1to3, match1);
  addRegexToken('SS',   match1to3, match2);
  addRegexToken('SSS',  match1to3, match3);
  
  var token;
  for (token = 'SSSS'; token.length <= 9; token += 'S') {
      addRegexToken(token, matchUnsigned);
  }
  
  function parseMs(input, array) {
      array[MILLISECOND] = toInt(('0.' + input) * 1000);
  }
  
  for (token = 'S'; token.length <= 9; token += 'S') {
      addParseToken(token, parseMs);
  }
  // MOMENTS
  
  export var getSetMillisecond = makeGetSet('Milliseconds', false);