1 | # utils
|
2 |
|
3 | ## 安装
|
4 | npm i z-utils
|
5 |
|
6 | ## 组件接口
|
7 |
|
8 | ### arraySlice(startIndex, endIndex)
|
9 | 即 Array.prototytpe.slice
|
10 |
|
11 | #### 示例
|
12 | utils.arraySlice.call({length:1, 0:1}, 0, 1) => [1]
|
13 |
|
14 | ### assign(target/*, ...args*/)
|
15 | 同 es5 的 Object.assign
|
16 |
|
17 | #### 示例
|
18 | utils.assign({a:1}, {b:2}) => {a:1,b:2}
|
19 |
|
20 | ### arrayForEach(func, scope)
|
21 | 即 Array.prototytpe.forEach
|
22 |
|
23 | #### 示例
|
24 | utils.arrayForEach.call({length:1, 0:1}, (v) => {}, null)
|
25 |
|
26 | ### create(obj, props)
|
27 | 同 es5 的 Object.create
|
28 |
|
29 | #### 示例
|
30 | utils.create(Array.prototype) => []
|
31 |
|
32 | ### global
|
33 | js 全局宿主对象
|
34 |
|
35 | #### 示例
|
36 | utils.global => window or global
|
37 |
|
38 | ### hasOwnProperty(key)
|
39 | 即 Object.prototype.hasOwnProperty
|
40 |
|
41 | #### 示例
|
42 | utils.hasOwnProperty.call({a:1}, 'a') => true
|
43 |
|
44 | ### isArray(arr)
|
45 | 同 es5 的 Array.isArray
|
46 |
|
47 | #### 示例
|
48 | utils.isArray([]) => true
|
49 |
|
50 | ### isEmptyObject(obj)
|
51 | 判断对象是否有可枚举属性
|
52 |
|
53 | #### 示例
|
54 | utils.isEmptyObject({}) => true
|
55 |
|
56 | ### isNativeFunction(func)
|
57 | 判断参数是否为JS的原生方法
|
58 |
|
59 | #### 示例
|
60 | utils.isNativeFunction([].push) => true
|
61 |
|
62 | ### isPlainObject(obj)
|
63 | 判断对象是否由对象字面量或 new Object() 直接创建的
|
64 |
|
65 | #### 示例
|
66 | utils.isPlainObject({a:1}) => true
|
67 |
|
68 | ### keys(object)
|
69 | 获取一个对象的可枚举属性的数组
|
70 |
|
71 | #### 示例
|
72 | utils.keys({a: 1, b: 2}) => ['a', 'b']
|
73 |
|
74 | ### merge(target, ...overriders)
|
75 | 将属性树深度合并到目标对象
|
76 |
|
77 | #### 示例
|
78 | utils.merge({a:{b:{c:1}}}, {a:{b:{d:2}}}) => {a:{b:{c:1,d:2}}}
|
79 |
|
80 | ### namespace(root, sNamespace, variable)
|
81 | 为对象或任何类型的变量创建命名空间
|
82 |
|
83 | #### 示例
|
84 | utils.namespace(window, 'a.b.c', 1) => windw.a.b.c === 1
|
85 |
|
86 | ### referenceTypes
|
87 | typeof 出的引用类型集
|
88 |
|
89 | #### 示例
|
90 | utils.referenceTypes => {'function': !0, 'object': !0}
|
91 |
|
92 | ### returnFalse()
|
93 | 始终返回 false 的函数
|
94 |
|
95 | #### 示例
|
96 | utils.returnFalse => returnFalse
|
97 |
|
98 | ### returnTrue()
|
99 | 始终返回 true 的函数
|
100 |
|
101 | #### 示例
|
102 | utils.returnTrue => returnTrue
|
103 |
|
104 | ### toString()
|
105 | 即 Object.prototype.toString
|
106 |
|
107 | #### 示例
|
108 | utils.toString.call([]) => '[object Array]'
|
109 |
|
110 | ### toArray(obj, startIndex, endIndex)
|
111 | 转换一个类数组对象为数组
|
112 |
|
113 | #### 示例
|
114 | utils.toArray({length:1, 0:1}, 0, 1) => [1]
|
115 |
|
116 | ### typeOf(obj)
|
117 | 返回参数的类型名称
|
118 |
|
119 | #### 示例
|
120 | utils.typeOf(/a/) => 'RegExp'
|
121 |
|
122 | ### uuid()
|
123 | 生成一个全局唯一标识符
|
124 |
|
125 | #### 示例
|
126 | utils.uuid() => "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
|
127 |
|
128 | ## 组件构建
|
129 |
|
130 | ### 从配置文件构建(rollup.config.js)
|
131 | npm run build // rollup -c
|
132 |
|
133 | 或者:
|
134 |
|
135 | ### 自定义构建
|
136 | npm run dev // node rollup
|
137 |
|
138 | ### 文档生成
|
139 | npm install -global esdoc
|
140 | echo '{"source": "./src", "destination": "./doc"}' > .esdoc.json
|
141 | esdoc
|
142 | #### 文档
|
143 | doc/index.html
|
144 |
|
145 | 或者:
|
146 |
|
147 | ### dox
|
148 | [https://github.com/tj/dox](https://github.com/tj/dox)
|