-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathproto.js
104 lines (98 loc) · 3.15 KB
/
proto.js
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
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
if (!('startsWith' in String.prototype)) {
String.prototype.startsWith = function (searchString, position) {
if (position) {
if (this.indexOf(searchString) == position) {
return true;
} else {
return false;
}
} else {
if (this.indexOf(searchString) == 0) {
return true;
} else {
return false;
}
}
}
}
if (!('endsWith' in String.prototype)) {
String.prototype.endsWith = function (searchString, position) {
if (position) {
if (this.lastIndexOf(searchString) == this.length - searchString.length - position) {
return true;
} else {
return false;
}
} else {
if (this.lastIndexOf(searchString) == this.length - searchString.length) {
return true;
} else {
return false;
}
}
}
}
if (!('repeat' in String.prototype)) {
String.prototype.repeat = function (count) {
if (!count ||/^\D+$/.test(count)) {
return this.toString();
} else {
var result = '';
while(count--){
result += this.toString();
}
return result
}
}
}
if (!('padEnd' in String.prototype)) {
String.prototype.padEnd = function(targetLength,padString) {
targetLength = targetLength>>0;
padString = String((typeof padString !== 'undefined' ? padString: ''));
if (this.length > targetLength) {
return String(this);
}
else {
targetLength = targetLength-this.length;
if (targetLength > padString.length) {
padString += padString.repeat(targetLength/padString.length);
}
return String(this) + padString.slice(0,targetLength);
}
};
}
if (!('padStart' in String.prototype)) {
String.prototype.padStart = function(targetLength,padString) {
targetLength = targetLength>>0
padString = String((typeof padString !== 'undefined' ? padString : ' '));
if (this.length > targetLength) {
return String(this);
}
else {
targetLength = targetLength-this.length;
if (targetLength > padString.length) {
padString += padString.repeat(targetLength/padString.length);
}
return padString.slice(0,targetLength) + String(this);
}
};
}
Date.prototype.format = function (format) {
format = format || "yyyy-MM-dd hh:mm:ss";
var o = {
"M+": this.getMonth() + 1,
"d+": this.getDate(),
"h+": this.getHours(),
"m+": this.getMinutes(),
"s+": this.getSeconds()
};
if (/(y+)/.test(format)) {
format = format.replace(RegExp.$1, (this.getFullYear() + "").substr(4 - RegExp.$1.length));
}
for (var k in o) {
if (new RegExp("(" + k + ")").test(format)) {
format = format.replace(RegExp.$1, (RegExp.$1.length == 1) ? (o[k]) : (("00" + o[k]).substr(("" + o[k]).length)));
}
}
return format;
}