-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathprototype.js
More file actions
executable file
·102 lines (87 loc) · 2.16 KB
/
prototype.js
File metadata and controls
executable file
·102 lines (87 loc) · 2.16 KB
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
exports.string = function string () {
String.prototype.trim = function () {
return this.replace(/(^\s*)|(\s*$)/g, "");
};
String.prototype.ltrim = function () {
return this.replace(/(^\s*)/g, "");
};
String.prototype.rtrim = function () {
return this.replace(/(\s*$)/g, "");
};
};
exports.array = function array () {
/**
* Array#distinct
* @returns {Array}
*/
Array.prototype.distinct = function(){
var arr = [],
obj = {},
i = 0,
len = this.length,
result;
for( ; i < len; i++ ){
result = this[i];
if( obj[result] !== result ){
arr.push( result );
obj[result] = result;
}
}
return arr;
};
/**
* Array#clear
* @returns {Array}
*/
Array.prototype.clear = function clear() {
this.length = 0;
return this;
};
/**
* Array#first
* @returns {Array}
*/
Array.prototype.first = function first() {
return this[0];
};
/**
* Array#last
* @returns {Array}
*/
Array.prototype.last = function last() {
return this[this.length - 1];
};
/**
* Array#clone() -> Array
*
* Returns a duplicate of the array, leaving the original array intact.
**/
Array.prototype.clone = function clone() {
return slice.call(this, 0);
};
};
exports.date = function date () {
/**
* 日期格式化
* @param fmt
* @returns {Date}
*/
Date.prototype.format = function (fmt) {
fmt = fmt || 'yyyy-MM-dd';
var o = {
"M+" : this.getMonth()+1, //月份
"d+" : this.getDate(), //日
"h+" : this.getHours(), //小时
"m+" : this.getMinutes(), //分
"s+" : this.getSeconds(), //秒
"q+" : Math.floor((this.getMonth()+3)/3), //季度
"S" : this.getMilliseconds() //毫秒
};
if(/(y+)/.test(fmt))
fmt=fmt.replace(RegExp.$1, (this.getFullYear()+"").substr(4 - RegExp.$1.length));
for(var k in o)
if(new RegExp("("+ k +")").test(fmt))
fmt = fmt.replace(RegExp.$1, (RegExp.$1.length==1) ? (o[k]) : (("00"+ o[k]).substr((""+ o[k]).length)));
return fmt;
};
};