amis-formula 3.1.0 → 3.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/lib/doc.md CHANGED
@@ -4,72 +4,74 @@
4
4
 
5
5
  用法:`IF(condition, consequent, alternate)`
6
6
 
7
- * `condition:expression` 条件表达式.
7
+ * `condition:expression` 条件表达式。例如:语文成绩>80
8
8
  * `consequent:any` 条件判断通过的返回结果
9
9
  * `alternate:any` 条件判断不通过的返回结果
10
10
 
11
11
  返回:`any` 根据条件返回不同的结果
12
12
 
13
- 示例:IF(A, B, C)
13
+ 如果满足条件condition,则返回consequent,否则返回alternate,支持多层嵌套IF函数。
14
14
 
15
- 如果满足条件A,则返回B,否则返回C,支持多层嵌套IF函数。
16
-
17
- 也可以用表达式如:A ? B : C
15
+ 等价于直接用JS表达式如:condition ? consequent : alternate。
18
16
 
19
17
  ### AND
20
18
 
21
19
  用法:`AND(expression1, expression2, ...expressionN)`
22
20
 
23
- * `conditions:...expression` 条件表达式.
21
+ * `conditions:...expression` 条件表达式,多个用逗号隔开。例如:语文成绩>80, 数学成绩>80
24
22
 
25
23
  返回:`boolean`
26
24
 
27
- 条件全部符合,返回 true,否则返回 false
25
+ 条件全部符合,返回 true,否则返回 false
28
26
 
29
- 示例:AND(语文成绩>80, 数学成绩>80)
27
+ 示例:AND(语文成绩>80, 数学成绩>80)
30
28
 
31
- 语文成绩和数学成绩都大于 80,则返回 true,否则返回 false
29
+ 语文成绩和数学成绩都大于 80,则返回 true,否则返回 false
32
30
 
33
- 也可以直接用表达式如:语文成绩>80 && 数学成绩>80
31
+ 等价于直接用JS表达式如:语文成绩>80 && 数学成绩>80
34
32
 
35
33
  ### OR
36
34
 
37
35
  用法:`OR(expression1, expression2, ...expressionN)`
38
36
 
39
- * `conditions:...expression` 条件表达式.
37
+ * `conditions:...expression` 条件表达式,多个用逗号隔开。例如:语文成绩>80, 数学成绩>80
40
38
 
41
39
  返回:`boolean`
42
40
 
43
- 条件任意一个满足条件,返回 true,否则返回 false
41
+ 条件任意一个满足条件,返回 true,否则返回 false
44
42
 
45
- 示例:OR(语文成绩>80, 数学成绩>80)
43
+ 示例:OR(语文成绩>80, 数学成绩>80)
46
44
 
47
- 语文成绩和数学成绩任意一个大于 80,则返回 true,否则返回 false
45
+ 语文成绩和数学成绩任意一个大于 80,则返回 true,否则返回 false
48
46
 
49
- 也可以直接用表达式如:语文成绩>80 || 数学成绩>80
47
+ 等价于直接用JS表达式如:语文成绩>80 || 数学成绩>80
50
48
 
51
49
  ### XOR
52
50
 
53
- 用法:`XOR(condition1, condition2)`
51
+ 用法:`XOR(condition1, condition2, ...expressionN)`
54
52
 
55
- * `condition1:expression` 条件表达式1
56
- * `condition2:expression` 条件表达式2
53
+ * `condition:...expression` 条件表达式,多个用逗号隔开。例如:语文成绩>80, 数学成绩>80
57
54
 
58
55
  返回:`boolean`
59
56
 
60
57
  异或处理,多个表达式组中存在奇数个真时认为真。
61
58
 
59
+ 示例:XOR(语文成绩 > 80, 数学成绩 > 80, 英语成绩 > 80)
60
+
61
+ 三门成绩中有一门或者三门大于 80,则返回 true,否则返回 false。
62
+
62
63
  ### IFS
63
64
 
64
65
  用法:`IFS(condition1, result1, condition2, result2,...conditionN, resultN)`
65
66
 
66
- * `args:...any` 条件,返回值集合
67
+ * `condition:...expression` 条件表达式
68
+ * `result:...any` 返回值
67
69
 
68
70
  返回:`any` 第一个满足条件的结果,没有命中的返回 false。
69
71
 
70
72
  判断函数集合,相当于多个 else if 合并成一个。
71
73
 
72
- 示例:IFS(语文成绩 > 80, "优秀", 语文成绩 > 60, "良", "继续努力")
74
+ 示例:IFS(语文成绩 > 80, "优秀", 语文成绩 > 60, "良", "继续努力")
73
75
 
74
76
  如果语文成绩大于 80,则返回优秀,否则判断大于 60 分,则返回良,否则返回继续努力。
75
77
 
@@ -83,7 +85,7 @@
83
85
 
84
86
  返回:`number` 传入数值的绝对值
85
87
 
86
- 返回传入数字的绝对值
88
+ 返回传入数字的绝对值。
87
89
 
88
90
  ### MAX
89
91
 
@@ -93,7 +95,7 @@
93
95
 
94
96
  返回:`number` 所有传入值中最大的那个
95
97
 
96
- 获取最大值,如果只有一个参数且是数组,则计算这个数组内的值
98
+ 获取最大值,如果只有一个参数且是数组,则计算这个数组内的值。
97
99
 
98
100
  ### MIN
99
101
 
@@ -103,7 +105,7 @@
103
105
 
104
106
  返回:`number` 所有传入值中最小的那个
105
107
 
106
- 获取最小值,如果只有一个参数且是数组,则计算这个数组内的值
108
+ 获取最小值,如果只有一个参数且是数组,则计算这个数组内的值。
107
109
 
108
110
  ### SUM
109
111
 
@@ -113,7 +115,7 @@
113
115
 
114
116
  返回:`number` 所有传入数值的总和
115
117
 
116
- 求和,如果只有一个参数且是数组,则计算这个数组内的值
118
+ 求和,如果只有一个参数且是数组,则计算这个数组内的值。
117
119
 
118
120
  ### INT
119
121
 
@@ -123,7 +125,7 @@
123
125
 
124
126
  返回:`number` 数值对应的整形
125
127
 
126
- 将数值向下取整为最接近的整数
128
+ 将数值向下取整为最接近的整数。
127
129
 
128
130
  ### MOD
129
131
 
@@ -134,20 +136,20 @@
134
136
 
135
137
  返回:`number` 两数相除的余数
136
138
 
137
- 返回两数相除的余数,参数 number 是被除数,divisor 是除数
139
+ 返回两数相除的余数,参数 number 是被除数,divisor 是除数。
138
140
 
139
141
  ### PI
140
142
 
141
143
  用法:`PI()`
142
144
 
143
- 圆周率 3.1415...
145
+ 圆周率 3.1415...。
144
146
 
145
147
  ### ROUND
146
148
 
147
149
  用法:`ROUND(num[, numDigits = 2])`
148
150
 
149
151
  * `num:number` 要处理的数字
150
- * `numDigits:number` 小数位数
152
+ * `numDigits:number` 小数位数,默认为2
151
153
 
152
154
  返回:`number` 传入数值四舍五入后的结果
153
155
 
@@ -158,7 +160,7 @@
158
160
  用法:`FLOOR(num[, numDigits=2])`
159
161
 
160
162
  * `num:number` 要处理的数字
161
- * `numDigits:number` 小数位数
163
+ * `numDigits:number` 小数位数,默认为2
162
164
 
163
165
  返回:`number` 传入数值向下取整后的结果
164
166
 
@@ -169,7 +171,7 @@
169
171
  用法:`CEIL(num[, numDigits=2])`
170
172
 
171
173
  * `num:number` 要处理的数字
172
- * `numDigits:number` 小数位数
174
+ * `numDigits:number` 小数位数,默认为2
173
175
 
174
176
  返回:`number` 传入数值向上取整后的结果
175
177
 
@@ -193,7 +195,7 @@
193
195
 
194
196
  返回:`number` 所有数值的平均值
195
197
 
196
- 返回所有参数的平均值,如果只有一个参数且是数组,则计算这个数组内的值
198
+ 返回所有参数的平均值,如果只有一个参数且是数组,则计算这个数组内的值。
197
199
 
198
200
  ### DEVSQ
199
201
 
@@ -203,7 +205,7 @@
203
205
 
204
206
  返回:`number` 所有数值的平均值
205
207
 
206
- 返回数据点与数据均值点之差(数据偏差)的平方和,如果只有一个参数且是数组,则计算这个数组内的值
208
+ 返回数据点与数据均值点之差(数据偏差)的平方和,如果只有一个参数且是数组,则计算这个数组内的值。
207
209
 
208
210
  ### AVEDEV
209
211
 
@@ -213,7 +215,7 @@
213
215
 
214
216
  返回:`number` 所有数值的平均值
215
217
 
216
- 数据点到其算术平均值的绝对偏差的平均值
218
+ 数据点到其算术平均值的绝对偏差的平均值。
217
219
 
218
220
  ### HARMEAN
219
221
 
@@ -223,7 +225,7 @@
223
225
 
224
226
  返回:`number` 所有数值的平均值
225
227
 
226
- 数据点的调和平均值,如果只有一个参数且是数组,则计算这个数组内的值
228
+ 数据点的调和平均值,如果只有一个参数且是数组,则计算这个数组内的值。
227
229
 
228
230
  ### LARGE
229
231
 
@@ -234,7 +236,7 @@
234
236
 
235
237
  返回:`number` 所有数值的平均值
236
238
 
237
- 数据集中第 k 个最大值
239
+ 数据集中第 k 个最大值。
238
240
 
239
241
  ### UPPERMONEY
240
242
 
@@ -244,7 +246,7 @@
244
246
 
245
247
  返回:`string` 数值中文大写字符
246
248
 
247
- 将数值转为中文大写金额
249
+ 将数值转为中文大写金额。
248
250
 
249
251
  ### RAND
250
252
 
@@ -252,9 +254,9 @@
252
254
 
253
255
  返回大于等于 0 且小于 1 的均匀分布随机实数。每一次触发计算都会变化。
254
256
 
255
- 示例:`RAND()*100`
257
+ 示例:`RAND()*100`,
256
258
 
257
- 返回 0-100 之间的随机数
259
+ 返回 0-100 之间的随机数。
258
260
 
259
261
  ### LAST
260
262
 
@@ -264,7 +266,7 @@
264
266
 
265
267
  返回:`any` 最后一个值
266
268
 
267
- 取数据最后一个
269
+ 取数据最后一个。
268
270
 
269
271
  ## 文本函数
270
272
 
@@ -298,7 +300,7 @@
298
300
 
299
301
  返回:`number` 长度
300
302
 
301
- 计算文本的长度
303
+ 计算文本的长度。
302
304
 
303
305
  ### LENGTH
304
306
 
@@ -308,7 +310,7 @@
308
310
 
309
311
  返回:`Array<number>` 长度集合
310
312
 
311
- 计算文本集合中所有文本的长度
313
+ 计算文本集合中所有文本的长度。
312
314
 
313
315
  ### ISEMPTY
314
316
 
@@ -318,7 +320,7 @@
318
320
 
319
321
  返回:`boolean` 判断结果
320
322
 
321
- 判断文本是否为空
323
+ 判断文本是否为空。
322
324
 
323
325
  ### CONCATENATE
324
326
 
@@ -328,7 +330,7 @@
328
330
 
329
331
  返回:`string` 连接后的文本
330
332
 
331
- 将多个传入值连接成文本
333
+ 将多个传入值连接成文本。
332
334
 
333
335
  ### CHAR
334
336
 
@@ -340,7 +342,7 @@
340
342
 
341
343
  返回计算机字符集的数字代码所对应的字符。
342
344
 
343
- `CHAR(97)` 等价于 "a"
345
+ 示例:`CHAR(97)` 等价于 "a"
344
346
 
345
347
  ### LOWER
346
348
 
@@ -350,7 +352,7 @@
350
352
 
351
353
  返回:`string` 结果文本
352
354
 
353
- 将传入文本转成小写
355
+ 将传入文本转成小写。
354
356
 
355
357
  ### UPPER
356
358
 
@@ -360,7 +362,7 @@
360
362
 
361
363
  返回:`string` 结果文本
362
364
 
363
- 将传入文本转成大写
365
+ 将传入文本转成大写。
364
366
 
365
367
  ### UPPERFIRST
366
368
 
@@ -370,7 +372,7 @@
370
372
 
371
373
  返回:`string` 结果文本
372
374
 
373
- 将传入文本首字母转成大写
375
+ 将传入文本首字母转成大写。
374
376
 
375
377
  ### PADSTART
376
378
 
@@ -382,11 +384,11 @@
382
384
 
383
385
  返回:`string` 结果文本
384
386
 
385
- 向前补齐文本长度
387
+ 向前补齐文本长度。
386
388
 
387
- 示例 `PADSTART("6", 2, "0")`
389
+ 示例 `PADSTART("6", 2, "0")`,
388
390
 
389
- 返回 `06`
391
+ 返回 `06`。
390
392
 
391
393
  ### CAPITALIZE
392
394
 
@@ -396,11 +398,11 @@
396
398
 
397
399
  返回:`string` 结果文本
398
400
 
399
- 将文本转成标题
401
+ 将文本转成标题。
400
402
 
401
- 示例 `CAPITALIZE("star")`
403
+ 示例 `CAPITALIZE("star")`,
402
404
 
403
- 返回 `Star`
405
+ 返回 `Star`。
404
406
 
405
407
  ### ESCAPE
406
408
 
@@ -410,11 +412,11 @@
410
412
 
411
413
  返回:`string` 结果文本
412
414
 
413
- 对文本进行 HTML 转义
415
+ 对文本进行 HTML 转义。
414
416
 
415
- 示例 `ESCAPE("<star>&")`
417
+ 示例 `ESCAPE("<star>&")`,
416
418
 
417
- 返回 `&lt;start&gt;&amp;`
419
+ 返回 `&lt;start&gt;&amp;`。
418
420
 
419
421
  ### TRUNCATE
420
422
 
@@ -425,11 +427,11 @@
425
427
 
426
428
  返回:`string` 结果文本
427
429
 
428
- 对文本长度进行截断
430
+ 对文本长度进行截断。
429
431
 
430
- 示例 `TRUNCATE("amis.baidu.com", 6)`
432
+ 示例 `TRUNCATE("amis.baidu.com", 6)`,
431
433
 
432
- 返回 `amis...`
434
+ 返回 `amis...`。
433
435
 
434
436
  ### BEFORELAST
435
437
 
@@ -440,7 +442,7 @@
440
442
 
441
443
  返回:`string` 判断结果
442
444
 
443
- 取在某个分隔符之前的所有字符串
445
+ 取在某个分隔符之前的所有字符串。
444
446
 
445
447
  ### SPLIT
446
448
 
@@ -451,11 +453,11 @@
451
453
 
452
454
  返回:`Array<string>` 文本集
453
455
 
454
- 将文本根据指定片段分割成数组
456
+ 将文本根据指定片段分割成数组。
455
457
 
456
- 示例:`SPLIT("a,b,c", ",")`
458
+ 示例:`SPLIT("a,b,c", ",")`,
457
459
 
458
- 返回 `["a", "b", "c"]`
460
+ 返回 `["a", "b", "c"]`。
459
461
 
460
462
  ### TRIM
461
463
 
@@ -465,7 +467,7 @@
465
467
 
466
468
  返回:`string` 处理后的文本
467
469
 
468
- 将文本去除前后空格
470
+ 将文本去除前后空格。
469
471
 
470
472
  ### STRIPTAG
471
473
 
@@ -475,11 +477,11 @@
475
477
 
476
478
  返回:`string` 处理后的文本
477
479
 
478
- 去除文本中的 HTML 标签
480
+ 去除文本中的 HTML 标签。
479
481
 
480
- 示例:`STRIPTAG("<b>amis</b>")`
482
+ 示例:`STRIPTAG("<b>amis</b>")`,
481
483
 
482
- 返回:`amis`
484
+ 返回:`amis`。
483
485
 
484
486
  ### LINEBREAK
485
487
 
@@ -489,11 +491,11 @@
489
491
 
490
492
  返回:`string` 处理后的文本
491
493
 
492
- 将字符串中的换行转成 HTML `<br>`,用于简单换行的场景
494
+ 将字符串中的换行转成 HTML `<br>`,用于简单换行的场景。
493
495
 
494
- 示例:`LINEBREAK("\n")`
496
+ 示例:`LINEBREAK("\n")`,
495
497
 
496
- 返回:`<br/>`
498
+ 返回:`<br/>`。
497
499
 
498
500
  ### STARTSWITH
499
501
 
@@ -504,7 +506,7 @@
504
506
 
505
507
  返回:`string` 判断结果
506
508
 
507
- 判断字符串(text)是否以特定字符串(startString)开始,是则返回 True,否则返回 False
509
+ 判断字符串(text)是否以特定字符串(startString)开始,是则返回 true,否则返回 false。
508
510
 
509
511
  ### ENDSWITH
510
512
 
@@ -515,7 +517,7 @@
515
517
 
516
518
  返回:`string` 判断结果
517
519
 
518
- 判断字符串(text)是否以特定字符串(endString)结束,是则返回 True,否则返回 False
520
+ 判断字符串(text)是否以特定字符串(endString)结束,是则返回 true,否则返回 false。
519
521
 
520
522
  ### CONTAINS
521
523
 
@@ -526,7 +528,7 @@
526
528
 
527
529
  返回:`string` 判断结果
528
530
 
529
- 判断参数 1 中的文本是否包含参数 2 中的文本。
531
+ 判断参数 1 中的文本是否包含参数 2 中的文本,是则返回 true,否则返回 false。
530
532
 
531
533
  ### REPLACE
532
534
 
@@ -550,7 +552,7 @@
550
552
 
551
553
  返回:`number` 命中的位置
552
554
 
553
- 对文本进行搜索,返回命中的位置
555
+ 对文本进行搜索,返回命中的位置。
554
556
 
555
557
  ### MID
556
558
 
@@ -562,7 +564,7 @@
562
564
 
563
565
  返回:`number` 命中的位置
564
566
 
565
- 返回文本字符串中从指定位置开始的特定数目的字符
567
+ 返回文本字符串中从指定位置开始的特定数目的字符。
566
568
 
567
569
  ### BASENAME
568
570
 
@@ -572,11 +574,11 @@
572
574
 
573
575
  返回:`string` 文件名
574
576
 
575
- 返回路径中的文件名
577
+ 返回路径中的文件名。
576
578
 
577
- 示例:`/home/amis/a.json`
579
+ 示例:`/home/amis/a.json`,
578
580
 
579
- 返回:a.json`
581
+ 返回:a.json`。
580
582
 
581
583
  ## 日期函数
582
584
 
@@ -586,25 +588,25 @@
586
588
 
587
589
  创建日期对象,可以通过特定格式的字符串,或者数值。
588
590
 
589
- 需要注意的是,其中月份的数值是从0开始的,也就是说,
590
- 如果是12月份,你应该传入数值11。
591
+ 需要注意的是,其中月份的数值是从0开始的,
592
+ 即如果是12月份,你应该传入数值11。
591
593
 
592
594
  ### TIMESTAMP
593
595
 
594
- 用法:`TIMESTAMP(date, 'x')`
596
+ 用法:`TIMESTAMP(date[, format = "X"])`
595
597
 
596
598
  * `date:date` 日期对象
597
599
  * `format:string` 时间戳格式,带毫秒传入 'x'。默认为 'X' 不带毫秒的。
598
600
 
599
601
  返回:`number` 时间戳
600
602
 
601
- 返回时间的时间戳
603
+ 返回时间的时间戳。
602
604
 
603
605
  ### TODAY
604
606
 
605
607
  用法:`TODAY()`
606
608
 
607
- 返回今天的日期
609
+ 返回今天的日期。
608
610
 
609
611
  ### NOW
610
612
 
@@ -621,11 +623,11 @@
621
623
 
622
624
  返回:`number` 星期几的数字标识
623
625
 
624
- 获取日期的星期几,
626
+ 获取日期的星期几。
625
627
 
626
- 示例:
628
+ 示例
627
629
 
628
- WEEKDAY('2023-02-27') 得到 1
630
+ WEEKDAY('2023-02-27') 得到 1
629
631
 
630
632
  ### WEEK
631
633
 
@@ -636,11 +638,11 @@ WEEKDAY('2023-02-27') 得到 1
636
638
 
637
639
  返回:`number` 星期几的数字标识
638
640
 
639
- 获取年份的星期,即第几周
641
+ 获取年份的星期,即第几周。
640
642
 
641
- 示例:
643
+ 示例
642
644
 
643
- WEEK('2023-03-05') 得到 10
645
+ WEEK('2023-03-05') 得到 10
644
646
 
645
647
  ### DATETOSTR
646
648
 
@@ -651,14 +653,14 @@ WEEK('2023-03-05') 得到 10
651
653
 
652
654
  返回:`string` 日期字符串
653
655
 
654
- 对日期、日期字符串、时间戳进行格式化
656
+ 对日期、日期字符串、时间戳进行格式化。
655
657
 
656
- 示例:
658
+ 示例
657
659
 
658
- DATETOSTR('12/25/2022', 'YYYY-MM-DD') 得到 '2022.12.25'
659
- DATETOSTR(1676563200, 'YYYY.MM.DD') 得到 '2023.02.17'
660
- DATETOSTR(1676563200000, 'YYYY.MM.DD hh:mm:ss') 得到 '2023.02.17 12:00:00'
661
- DATETOSTR(DATE('2021-12-21'), 'YYYY.MM.DD hh:mm:ss') 得到 '2021.12.21 08:00:00'
660
+ DATETOSTR('12/25/2022', 'YYYY-MM-DD') 得到 '2022.12.25'
661
+ DATETOSTR(1676563200, 'YYYY.MM.DD') 得到 '2023.02.17'
662
+ DATETOSTR(1676563200000, 'YYYY.MM.DD hh:mm:ss') 得到 '2023.02.17 12:00:00'
663
+ DATETOSTR(DATE('2021-12-21'), 'YYYY.MM.DD hh:mm:ss') 得到 '2021.12.21 08:00:00'
662
664
 
663
665
  ### DATERANGESPLIT
664
666
 
@@ -671,16 +673,16 @@ DATETOSTR(DATE('2021-12-21'), 'YYYY.MM.DD hh:mm:ss') 得到 '2021.12.21 08:00:00
671
673
 
672
674
  返回:`string` 日期字符串
673
675
 
674
- 获取日期范围字符串中的开始时间、结束时间
676
+ 获取日期范围字符串中的开始时间、结束时间。
675
677
 
676
678
  示例:
677
679
 
678
- DATERANGESPLIT('1676563200, 1676735999') 得到 [1676563200, 1676735999]
679
- DATERANGESPLIT('1676563200, 1676735999', undefined , 'YYYY.MM.DD hh:mm:ss') 得到 [2023.02.17 12:00:00, 2023.02.18 11:59:59]
680
- DATERANGESPLIT('1676563200, 1676735999', 0 , 'YYYY.MM.DD hh:mm:ss') 得到 '2023.02.17 12:00:00'
681
- DATERANGESPLIT('1676563200, 1676735999', 'start' , 'YYYY.MM.DD hh:mm:ss') 得到 '2023.02.17 12:00:00'
682
- DATERANGESPLIT('1676563200, 1676735999', 1 , 'YYYY.MM.DD hh:mm:ss') 得到 '2023.02.18 11:59:59'
683
- DATERANGESPLIT('1676563200, 1676735999', 'end' , 'YYYY.MM.DD hh:mm:ss') 得到 '2023.02.18 11:59:59'
680
+ DATERANGESPLIT('1676563200, 1676735999') 得到 [1676563200, 1676735999]
681
+ DATERANGESPLIT('1676563200, 1676735999', undefined , 'YYYY.MM.DD hh:mm:ss') 得到 [2023.02.17 12:00:00, 2023.02.18 11:59:59]
682
+ DATERANGESPLIT('1676563200, 1676735999', 0 , 'YYYY.MM.DD hh:mm:ss') 得到 '2023.02.17 12:00:00'
683
+ DATERANGESPLIT('1676563200, 1676735999', 'start' , 'YYYY.MM.DD hh:mm:ss') 得到 '2023.02.17 12:00:00'
684
+ DATERANGESPLIT('1676563200, 1676735999', 1 , 'YYYY.MM.DD hh:mm:ss') 得到 '2023.02.18 11:59:59'
685
+ DATERANGESPLIT('1676563200, 1676735999', 'end' , 'YYYY.MM.DD hh:mm:ss') 得到 '2023.02.18 11:59:59'
684
686
 
685
687
  ### STARTOF
686
688
 
@@ -692,7 +694,7 @@ DATERANGESPLIT('1676563200, 1676735999', 'end' , 'YYYY.MM.DD hh:mm:ss') 得到 '
692
694
 
693
695
  返回:`date` 新的日期对象
694
696
 
695
- 返回日期的指定范围的开端
697
+ 返回日期的指定范围的开端。
696
698
 
697
699
  ### ENDOF
698
700
 
@@ -704,7 +706,7 @@ DATERANGESPLIT('1676563200, 1676735999', 'end' , 'YYYY.MM.DD hh:mm:ss') 得到 '
704
706
 
705
707
  返回:`date` 新的日期对象
706
708
 
707
- 返回日期的指定范围的末尾
709
+ 返回日期的指定范围的末尾。
708
710
 
709
711
  ### YEAR
710
712
 
@@ -714,7 +716,7 @@ DATERANGESPLIT('1676563200, 1676735999', 'end' , 'YYYY.MM.DD hh:mm:ss') 得到 '
714
716
 
715
717
  返回:`number` 数值
716
718
 
717
- 返回日期的年份
719
+ 返回日期的年份。
718
720
 
719
721
  ### MONTH
720
722
 
@@ -734,7 +736,7 @@ DATERANGESPLIT('1676563200, 1676735999', 'end' , 'YYYY.MM.DD hh:mm:ss') 得到 '
734
736
 
735
737
  返回:`number` 数值
736
738
 
737
- 返回日期的天
739
+ 返回日期的天。
738
740
 
739
741
  ### HOUR
740
742
 
@@ -744,7 +746,7 @@ DATERANGESPLIT('1676563200, 1676735999', 'end' , 'YYYY.MM.DD hh:mm:ss') 得到 '
744
746
 
745
747
  返回:`number` 数值
746
748
 
747
- 返回日期的小时
749
+ 返回日期的小时。
748
750
 
749
751
  ### MINUTE
750
752
 
@@ -754,7 +756,7 @@ DATERANGESPLIT('1676563200, 1676735999', 'end' , 'YYYY.MM.DD hh:mm:ss') 得到 '
754
756
 
755
757
  返回:`number` 数值
756
758
 
757
- 返回日期的分
759
+ 返回日期的分。
758
760
 
759
761
  ### SECOND
760
762
 
@@ -764,7 +766,7 @@ DATERANGESPLIT('1676563200, 1676735999', 'end' , 'YYYY.MM.DD hh:mm:ss') 得到 '
764
766
 
765
767
  返回:`number` 数值
766
768
 
767
- 返回日期的秒
769
+ 返回日期的秒。
768
770
 
769
771
  ### YEARS
770
772
 
@@ -775,7 +777,7 @@ DATERANGESPLIT('1676563200, 1676735999', 'end' , 'YYYY.MM.DD hh:mm:ss') 得到 '
775
777
 
776
778
  返回:`number` 数值
777
779
 
778
- 返回两个日期相差多少年
780
+ 返回两个日期相差多少年。
779
781
 
780
782
  ### MINUTES
781
783
 
@@ -786,7 +788,7 @@ DATERANGESPLIT('1676563200, 1676735999', 'end' , 'YYYY.MM.DD hh:mm:ss') 得到 '
786
788
 
787
789
  返回:`number` 数值
788
790
 
789
- 返回两个日期相差多少分钟
791
+ 返回两个日期相差多少分钟。
790
792
 
791
793
  ### DAYS
792
794
 
@@ -797,7 +799,7 @@ DATERANGESPLIT('1676563200, 1676735999', 'end' , 'YYYY.MM.DD hh:mm:ss') 得到 '
797
799
 
798
800
  返回:`number` 数值
799
801
 
800
- 返回两个日期相差多少天
802
+ 返回两个日期相差多少天。
801
803
 
802
804
  ### HOURS
803
805
 
@@ -808,7 +810,7 @@ DATERANGESPLIT('1676563200, 1676735999', 'end' , 'YYYY.MM.DD hh:mm:ss') 得到 '
808
810
 
809
811
  返回:`number` 数值
810
812
 
811
- 返回两个日期相差多少小时
813
+ 返回两个日期相差多少小时。
812
814
 
813
815
  ### DATEMODIFY
814
816
 
@@ -820,11 +822,11 @@ DATERANGESPLIT('1676563200, 1676735999', 'end' , 'YYYY.MM.DD hh:mm:ss') 得到 '
820
822
 
821
823
  返回:`date` 日期对象
822
824
 
823
- 修改日期,对日期进行加减天、月份、年等操作
825
+ 修改日期,对日期进行加减天、月份、年等操作。
824
826
 
825
827
  示例:
826
828
 
827
- DATEMODIFY(A, -2, 'month')
829
+ DATEMODIFY(A, -2, 'month')
828
830
 
829
831
  对日期 A 进行往前减2月的操作。
830
832
 
@@ -851,7 +853,7 @@ DATEMODIFY(A, -2, 'month')
851
853
 
852
854
  返回:`boolean` 判断结果
853
855
 
854
- 判断两个日期,是否第一个日期在第二个日期的前面
856
+ 判断两个日期,是否第一个日期在第二个日期的前面,是则返回 true,否则返回 false。
855
857
 
856
858
  ### ISAFTER
857
859
 
@@ -863,7 +865,7 @@ DATEMODIFY(A, -2, 'month')
863
865
 
864
866
  返回:`boolean` 判断结果
865
867
 
866
- 判断两个日期,是否第一个日期在第二个日期的后面
868
+ 判断两个日期,是否第一个日期在第二个日期的后面,是则返回 true,否则返回 false。
867
869
 
868
870
  ### BETWEENRANGE
869
871
 
@@ -876,9 +878,9 @@ DATEMODIFY(A, -2, 'month')
876
878
 
877
879
  返回:`boolean` 判断结果
878
880
 
879
- 判断日期是否在指定范围内
881
+ 判断日期是否在指定范围内,是则返回 true,否则返回 false。
880
882
 
881
- 示例:BETWEENRANGE('2021/12/6', ['2021/12/5','2021/12/7'])
883
+ 示例:BETWEENRANGE('2021/12/6', ['2021/12/5','2021/12/7'])
882
884
 
883
885
  ### ISSAMEORBEFORE
884
886
 
@@ -890,7 +892,7 @@ DATEMODIFY(A, -2, 'month')
890
892
 
891
893
  返回:`boolean` 判断结果
892
894
 
893
- 判断两个日期,是否第一个日期在第二个日期的前面或者相等
895
+ 判断两个日期,是否第一个日期在第二个日期的前面或者相等,是则返回 true,否则返回 false。
894
896
 
895
897
  ### ISSAMEORAFTER
896
898
 
@@ -902,7 +904,7 @@ DATEMODIFY(A, -2, 'month')
902
904
 
903
905
  返回:`boolean` 判断结果
904
906
 
905
- 判断两个日期,是否第一个日期在第二个日期的后面或者相等
907
+ 判断两个日期,是否第一个日期在第二个日期的后面或者相等,是则返回 true,否则返回 false。
906
908
 
907
909
  ## 数组
908
910
 
@@ -914,7 +916,7 @@ DATEMODIFY(A, -2, 'month')
914
916
 
915
917
  返回:`boolean` 结果
916
918
 
917
- 返回数组的长度
919
+ 返回数组的长度。
918
920
 
919
921
  ### ARRAYMAP
920
922
 
@@ -953,7 +955,7 @@ DATEMODIFY(A, -2, 'month')
953
955
 
954
956
  示例:
955
957
 
956
- ARRAYFINDINDEX([0, 2, false], item => item === 2) 得到 1
958
+ ARRAYFINDINDEX([0, 2, false], item => item === 2) 得到 1
957
959
 
958
960
  ### ARRAYFIND
959
961
 
@@ -969,7 +971,7 @@ ARRAYFINDINDEX([0, 2, false], item => item === 2) 得到 1
969
971
 
970
972
  示例:
971
973
 
972
- ARRAYFIND([0, 2, false], item => item === 2) 得到 2
974
+ ARRAYFIND([0, 2, false], item => item === 2) 得到 2
973
975
 
974
976
  ### ARRAYSOME
975
977
 
@@ -981,11 +983,11 @@ ARRAYFIND([0, 2, false], item => item === 2) 得到 2
981
983
  返回:`boolean` 结果
982
984
 
983
985
  数据做数据遍历判断,需要搭配箭头函数一起使用,注意箭头函数只支持单表达式用法。
984
- 判断第二个箭头函数是否存在返回为 true 的成员。
986
+ 判断第二个箭头函数是否存在返回为 true 的成员,是则返回 true,否则返回 false。
985
987
 
986
988
  示例:
987
989
 
988
- ARRAYSOME([0, 2, false], item => item === 2) 得到 true
990
+ ARRAYSOME([0, 2, false], item => item === 2) 得到 true
989
991
 
990
992
  ### ARRAYEVERY
991
993
 
@@ -997,7 +999,7 @@ ARRAYSOME([0, 2, false], item => item === 2) 得到 true
997
999
  返回:`boolean` 结果
998
1000
 
999
1001
  数据做数据遍历判断,需要搭配箭头函数一起使用,注意箭头函数只支持单表达式用法。
1000
- 判断第二个箭头函数返回是否都为 true。
1002
+ 判断第二个箭头函数返回是否都为 true,是则返回 true,否则返回 false
1001
1003
 
1002
1004
  示例:
1003
1005
 
@@ -1012,11 +1014,11 @@ ARRAYEVERY([0, 2, false], item => item === 2) 得到 false
1012
1014
 
1013
1015
  返回:`any` 结果
1014
1016
 
1015
- 判断数据中是否存在指定元素
1017
+ 判断数据中是否存在指定元素。
1016
1018
 
1017
1019
  示例:
1018
1020
 
1019
- ARRAYINCLUDES([0, 2, false], 2) 得到 true
1021
+ ARRAYINCLUDES([0, 2, false], 2) 得到 true
1020
1022
 
1021
1023
  ### COMPACT
1022
1024
 
@@ -1026,11 +1028,11 @@ ARRAYINCLUDES([0, 2, false], 2) 得到 true
1026
1028
 
1027
1029
  返回:`Array<any>` 结果
1028
1030
 
1029
- 数组过滤掉 false、null、0 和 ""
1031
+ 数组过滤掉 false、null、0 和 ""
1030
1032
 
1031
1033
  示例:
1032
1034
 
1033
- COMPACT([0, 1, false, 2, '', 3]) 得到 [1, 2, 3]
1035
+ COMPACT([0, 1, false, 2, '', 3]) 得到 [1, 2, 3]
1034
1036
 
1035
1037
  ### JOIN
1036
1038
 
@@ -1041,11 +1043,11 @@ COMPACT([0, 1, false, 2, '', 3]) 得到 [1, 2, 3]
1041
1043
 
1042
1044
  返回:`String` 结果
1043
1045
 
1044
- 数组转成字符串
1046
+ 数组转成字符串。
1045
1047
 
1046
1048
  示例:
1047
1049
 
1048
- JOIN(['a', 'b', 'c'], '=') 得到 'a=b=c'
1050
+ JOIN(['a', 'b', 'c'], '=') 得到 'a=b=c'
1049
1051
 
1050
1052
  ### CONCAT
1051
1053
 
@@ -1055,11 +1057,11 @@ JOIN(['a', 'b', 'c'], '=') 得到 'a=b=c'
1055
1057
 
1056
1058
  返回:`Array<any>` 结果
1057
1059
 
1058
- 数组合并
1060
+ 数组合并。
1059
1061
 
1060
1062
  示例:
1061
1063
 
1062
- CONCAT(['a', 'b', 'c'], ['1'], ['3']) 得到 ['a', 'b', 'c', '1', '3']
1064
+ CONCAT(['a', 'b', 'c'], ['1'], ['3']) 得到 ['a', 'b', 'c', '1', '3']
1063
1065
 
1064
1066
  ### UNIQ
1065
1067
 
@@ -1070,11 +1072,11 @@ CONCAT(['a', 'b', 'c'], ['1'], ['3']) 得到 ['a', 'b', 'c', '1', '3']
1070
1072
 
1071
1073
  返回:`Array<any>` 结果
1072
1074
 
1073
- 数组去重,第二个参数「field」,可指定根据该字段去重
1075
+ 数组去重,第二个参数「field」,可指定根据该字段去重。
1074
1076
 
1075
1077
  示例:
1076
1078
 
1077
- UNIQ([{a: '1'}, {b: '2'}, {a: '1'}], 'id')
1079
+ UNIQ([{a: '1'}, {b: '2'}, {a: '1'}], 'id')
1078
1080
 
1079
1081
  ## 编码
1080
1082
 
@@ -1086,11 +1088,11 @@ UNIQ([{a: '1'}, {b: '2'}, {a: '1'}], 'id')
1086
1088
 
1087
1089
  返回:`string` 结果
1088
1090
 
1089
- 将JS对象转换成JSON字符串
1091
+ 将JS对象转换成JSON字符串。
1090
1092
 
1091
1093
  示例:
1092
1094
 
1093
- ENCODEJSON({name: 'amis'}) 得到 '{"name":"amis"}'
1095
+ ENCODEJSON({name: 'amis'}) 得到 '{"name":"amis"}'
1094
1096
 
1095
1097
  ### DECODEJSON
1096
1098
 
@@ -1100,11 +1102,11 @@ ENCODEJSON({name: 'amis'}) 得到 '{"name":"amis"}'
1100
1102
 
1101
1103
  返回:`object` 结果
1102
1104
 
1103
- 解析JSON编码数据,返回JS对象
1105
+ 解析JSON编码数据,返回JS对象。
1104
1106
 
1105
1107
  示例:
1106
1108
 
1107
- DECODEJSON('{\"name\": "amis"}') 得到 {name: 'amis'}
1109
+ DECODEJSON('{\"name\": "amis"}') 得到 {name: 'amis'}
1108
1110
 
1109
1111
  ## 其他
1110
1112
 
@@ -1118,15 +1120,15 @@ DECODEJSON('{\"name\": "amis"}') 得到 {name: 'amis'}
1118
1120
 
1119
1121
  返回:`any` 结果
1120
1122
 
1121
- 根据对象或者数组的path路径获取值。 如果解析 value 是 undefined 会以 defaultValue 取代
1123
+ 根据对象或者数组的path路径获取值。 如果解析 value 是 undefined 会以 defaultValue 取代。
1122
1124
 
1123
1125
  示例:
1124
1126
 
1125
- GET([0, 2, {name: 'amis', age: 18}], 1) 得到 2
1126
- GET([0, 2, {name: 'amis', age: 18}], '2.name') 得到 'amis'
1127
- GET({arr: [{name: 'amis', age: 18}]}, 'arr[0].name') 得到 'amis'
1128
- GET({arr: [{name: 'amis', age: 18}]}, 'arr.0.name') 得到 'amis'
1129
- GET({arr: [{name: 'amis', age: 18}]}, 'arr.1.name', 'not-found') 得到 'not-found'
1127
+ GET([0, 2, {name: 'amis', age: 18}], 1) 得到 2
1128
+ GET([0, 2, {name: 'amis', age: 18}], '2.name') 得到 'amis'
1129
+ GET({arr: [{name: 'amis', age: 18}]}, 'arr[0].name') 得到 'amis'
1130
+ GET({arr: [{name: 'amis', age: 18}]}, 'arr.0.name') 得到 'amis'
1131
+ GET({arr: [{name: 'amis', age: 18}]}, 'arr.1.name', 'not-found') 得到 'not-found'
1130
1132
 
1131
1133
  ### ISTYPE
1132
1134