amis-formula 6.9.0 → 6.10.0-beta.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/esm/doc.js +24 -24
- package/esm/doc.md +30 -16
- package/esm/error.js +1 -1
- package/esm/evalutor.d.ts +31 -17
- package/esm/evalutor.js +37 -20
- package/esm/evalutorForAsync.js +1 -1
- package/esm/filter.js +1 -1
- package/esm/function.js +1 -1
- package/esm/index.js +1 -1
- package/esm/lexer.js +1 -1
- package/esm/parser.js +1 -1
- package/lib/doc.js +24 -24
- package/lib/doc.md +30 -16
- package/lib/error.js +1 -1
- package/lib/evalutor.d.ts +31 -17
- package/lib/evalutor.js +37 -20
- package/lib/evalutorForAsync.js +1 -1
- package/lib/filter.js +1 -1
- package/lib/function.js +1 -1
- package/lib/index.js +1 -1
- package/lib/lexer.js +1 -1
- package/lib/parser.js +1 -1
- package/package.json +1 -1
package/lib/evalutor.d.ts
CHANGED
|
@@ -281,7 +281,7 @@ export declare class Evaluator {
|
|
|
281
281
|
/**
|
|
282
282
|
* 获取最大值,如果只有一个参数且是数组,则计算这个数组内的值。
|
|
283
283
|
*
|
|
284
|
-
* @example MAX(num1, num2, ...numN)
|
|
284
|
+
* @example MAX(num1, num2, ...numN) or MAX([num1, num2, ...numN])
|
|
285
285
|
* @param {...number} num - 数值
|
|
286
286
|
* @namespace 数学函数
|
|
287
287
|
*
|
|
@@ -291,7 +291,7 @@ export declare class Evaluator {
|
|
|
291
291
|
/**
|
|
292
292
|
* 获取最小值,如果只有一个参数且是数组,则计算这个数组内的值。
|
|
293
293
|
*
|
|
294
|
-
* @example MIN(num1, num2, ...numN)
|
|
294
|
+
* @example MIN(num1, num2, ...numN) or MIN([num1, num2, ...numN])
|
|
295
295
|
* @param {...number} num - 数值
|
|
296
296
|
* @namespace 数学函数
|
|
297
297
|
*
|
|
@@ -301,7 +301,7 @@ export declare class Evaluator {
|
|
|
301
301
|
/**
|
|
302
302
|
* 求和,如果只有一个参数且是数组,则计算这个数组内的值。
|
|
303
303
|
*
|
|
304
|
-
* @example SUM(num1, num2, ...numN)
|
|
304
|
+
* @example SUM(num1, num2, ...numN) or SUM([num1, num2, ...numN])
|
|
305
305
|
* @param {...number} num - 数值
|
|
306
306
|
* @namespace 数学函数
|
|
307
307
|
*
|
|
@@ -384,7 +384,7 @@ export declare class Evaluator {
|
|
|
384
384
|
/**
|
|
385
385
|
* 返回所有参数的平均值,如果只有一个参数且是数组,则计算这个数组内的值。
|
|
386
386
|
*
|
|
387
|
-
* @example AVG(num1, num2, ...numN)
|
|
387
|
+
* @example AVG(num1, num2, ...numN) or AVG([num1, num2, ...numN])
|
|
388
388
|
* @param {...number} num - 要处理的数字
|
|
389
389
|
* @namespace 数学函数
|
|
390
390
|
*
|
|
@@ -580,7 +580,7 @@ export declare class Evaluator {
|
|
|
580
580
|
*
|
|
581
581
|
* @returns {string} 结果文本
|
|
582
582
|
*/
|
|
583
|
-
fnUPPERFIRST(text: string): string
|
|
583
|
+
fnUPPERFIRST(text: string): Capitalize<string>;
|
|
584
584
|
/**
|
|
585
585
|
* 向前补齐文本长度。
|
|
586
586
|
*
|
|
@@ -712,7 +712,7 @@ export declare class Evaluator {
|
|
|
712
712
|
* @param {string} startString - 起始文本
|
|
713
713
|
* @namespace 文本函数
|
|
714
714
|
*
|
|
715
|
-
* @returns {
|
|
715
|
+
* @returns {boolean} 判断结果
|
|
716
716
|
*/
|
|
717
717
|
fnSTARTSWITH(text: string, search: string): boolean;
|
|
718
718
|
/**
|
|
@@ -723,7 +723,7 @@ export declare class Evaluator {
|
|
|
723
723
|
* @param {string} endString - 结束文本
|
|
724
724
|
* @namespace 文本函数
|
|
725
725
|
*
|
|
726
|
-
* @returns {
|
|
726
|
+
* @returns {boolean} 判断结果
|
|
727
727
|
*/
|
|
728
728
|
fnENDSWITH(text: string, search: string): boolean;
|
|
729
729
|
/**
|
|
@@ -734,7 +734,7 @@ export declare class Evaluator {
|
|
|
734
734
|
* @param {string} searchText - 搜索文本
|
|
735
735
|
* @namespace 文本函数
|
|
736
736
|
*
|
|
737
|
-
* @returns {
|
|
737
|
+
* @returns {boolean} 判断结果
|
|
738
738
|
*/
|
|
739
739
|
fnCONTAINS(text: string, search: string): boolean;
|
|
740
740
|
/**
|
|
@@ -764,13 +764,17 @@ export declare class Evaluator {
|
|
|
764
764
|
/**
|
|
765
765
|
* 返回文本字符串中从指定位置开始的特定数目的字符。
|
|
766
766
|
*
|
|
767
|
+
* 示例:`MID("amis.baidu.com", 6, 3)`,
|
|
768
|
+
*
|
|
769
|
+
* 返回 `aid`。
|
|
770
|
+
*
|
|
767
771
|
* @example MID(text, from, len)
|
|
768
772
|
* @param {string} text - 要处理的文本
|
|
769
773
|
* @param {number} from - 起始位置
|
|
770
774
|
* @param {number} len - 处理长度
|
|
771
775
|
* @namespace 文本函数
|
|
772
776
|
*
|
|
773
|
-
* @returns {
|
|
777
|
+
* @returns {string} 命中的位置
|
|
774
778
|
*/
|
|
775
779
|
fnMID(text: string, from: number, len: number): string;
|
|
776
780
|
/**
|
|
@@ -778,7 +782,7 @@ export declare class Evaluator {
|
|
|
778
782
|
*
|
|
779
783
|
* 示例:`/home/amis/a.json`,
|
|
780
784
|
*
|
|
781
|
-
*
|
|
785
|
+
* 返回:`a.json`。
|
|
782
786
|
*
|
|
783
787
|
* @example BASENAME(text)
|
|
784
788
|
* @param {string} text - 要处理的文本
|
|
@@ -919,7 +923,7 @@ export declare class Evaluator {
|
|
|
919
923
|
* @param {date} date 日期对象
|
|
920
924
|
* @param {string} unit 比如可以传入 'day'、'month'、'year' 或者 `week` 等等
|
|
921
925
|
* @param {string} format 日期格式,可选
|
|
922
|
-
* @returns {
|
|
926
|
+
* @returns {any} 新的日期对象, 如果传入 format 则返回格式化后的日期字符串
|
|
923
927
|
*/
|
|
924
928
|
fnSTARTOF(date: Date, unit?: any, format?: string): string | Date;
|
|
925
929
|
/**
|
|
@@ -930,7 +934,7 @@ export declare class Evaluator {
|
|
|
930
934
|
* @param {date} date 日期对象
|
|
931
935
|
* @param {string} unit 比如可以传入 'day'、'month'、'year' 或者 `week` 等等
|
|
932
936
|
* @param {string} format 日期格式,可选
|
|
933
|
-
* @returns {
|
|
937
|
+
* @returns {any} 新的日期对象, 如果传入 format 则返回格式化后的日期字符串
|
|
934
938
|
*/
|
|
935
939
|
fnENDOF(date: Date, unit?: any, format?: string): string | Date;
|
|
936
940
|
normalizeDate(raw: any): Date;
|
|
@@ -1122,28 +1126,38 @@ export declare class Evaluator {
|
|
|
1122
1126
|
* @param {Array<any>} arr 数组
|
|
1123
1127
|
* @namespace 数组
|
|
1124
1128
|
* @example COUNT(arr)
|
|
1125
|
-
* @returns {
|
|
1129
|
+
* @returns {number} 结果
|
|
1126
1130
|
*/
|
|
1127
1131
|
fnCOUNT(value: any): number;
|
|
1128
1132
|
/**
|
|
1129
1133
|
* 数组做数据转换,需要搭配箭头函数一起使用,注意箭头函数只支持单表达式用法。
|
|
1130
1134
|
*
|
|
1135
|
+
* 将数组中的每个元素转换成箭头函数返回的值。
|
|
1136
|
+
*
|
|
1137
|
+
* 示例:
|
|
1138
|
+
*
|
|
1139
|
+
* ARRAYMAP([1, 2, 3], item => item + 1) 得到 [2, 3, 4]。
|
|
1140
|
+
*
|
|
1131
1141
|
* @param {Array<any>} arr 数组
|
|
1132
1142
|
* @param {Function<any>} iterator 箭头函数
|
|
1133
1143
|
* @namespace 数组
|
|
1134
1144
|
* @example ARRAYMAP(arr, item => item)
|
|
1135
|
-
* @returns {
|
|
1145
|
+
* @returns {Array<any>} 返回转换后的数组
|
|
1136
1146
|
*/
|
|
1137
1147
|
fnARRAYMAP(value: any, iterator: any): any[];
|
|
1138
1148
|
/**
|
|
1139
1149
|
* 数据做数据过滤,需要搭配箭头函数一起使用,注意箭头函数只支持单表达式用法。
|
|
1140
1150
|
* 将第二个箭头函数返回为 false 的成员过滤掉。
|
|
1141
1151
|
*
|
|
1152
|
+
* 示例:
|
|
1153
|
+
*
|
|
1154
|
+
* ARRAYFILTER([1, 2, 3], item => item > 1) 得到 [2, 3]。
|
|
1155
|
+
*
|
|
1142
1156
|
* @param {Array<any>} arr 数组
|
|
1143
1157
|
* @param {Function<any>} iterator 箭头函数
|
|
1144
1158
|
* @namespace 数组
|
|
1145
1159
|
* @example ARRAYFILTER(arr, item => item)
|
|
1146
|
-
* @returns {
|
|
1160
|
+
* @returns {Array<any>} 返回过滤后的数组
|
|
1147
1161
|
*/
|
|
1148
1162
|
fnARRAYFILTER(value: any, iterator: any): any[];
|
|
1149
1163
|
/**
|
|
@@ -1244,7 +1258,7 @@ export declare class Evaluator {
|
|
|
1244
1258
|
* @param { String} separator 分隔符
|
|
1245
1259
|
* @namespace 数组
|
|
1246
1260
|
* @example JOIN(arr, string)
|
|
1247
|
-
* @returns {
|
|
1261
|
+
* @returns {string} 结果
|
|
1248
1262
|
*/
|
|
1249
1263
|
fnJOIN(arr: any[], separator?: string): string;
|
|
1250
1264
|
/**
|
|
@@ -1265,7 +1279,7 @@ export declare class Evaluator {
|
|
|
1265
1279
|
*
|
|
1266
1280
|
* 示例:
|
|
1267
1281
|
*
|
|
1268
|
-
* UNIQ([{a: '1'}, {b: '2'}, {a: '1'}]
|
|
1282
|
+
* UNIQ([{a: '1'}, {b: '2'}, {a: '1'}]) 得到 [{a: '1'}, {b: '2'}]。
|
|
1269
1283
|
*
|
|
1270
1284
|
* @param {Array<any>} arr 数组
|
|
1271
1285
|
* @param {string} field 字段
|
package/lib/evalutor.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* amis-formula v6.
|
|
2
|
+
* amis-formula v6.10.0-beta.0
|
|
3
3
|
* Copyright 2021-2024 fex
|
|
4
4
|
*/
|
|
5
5
|
|
|
@@ -598,7 +598,7 @@ var Evaluator = /** @class */ (function () {
|
|
|
598
598
|
/**
|
|
599
599
|
* 获取最大值,如果只有一个参数且是数组,则计算这个数组内的值。
|
|
600
600
|
*
|
|
601
|
-
* @example MAX(num1, num2, ...numN)
|
|
601
|
+
* @example MAX(num1, num2, ...numN) or MAX([num1, num2, ...numN])
|
|
602
602
|
* @param {...number} num - 数值
|
|
603
603
|
* @namespace 数学函数
|
|
604
604
|
*
|
|
@@ -616,7 +616,7 @@ var Evaluator = /** @class */ (function () {
|
|
|
616
616
|
/**
|
|
617
617
|
* 获取最小值,如果只有一个参数且是数组,则计算这个数组内的值。
|
|
618
618
|
*
|
|
619
|
-
* @example MIN(num1, num2, ...numN)
|
|
619
|
+
* @example MIN(num1, num2, ...numN) or MIN([num1, num2, ...numN])
|
|
620
620
|
* @param {...number} num - 数值
|
|
621
621
|
* @namespace 数学函数
|
|
622
622
|
*
|
|
@@ -634,7 +634,7 @@ var Evaluator = /** @class */ (function () {
|
|
|
634
634
|
/**
|
|
635
635
|
* 求和,如果只有一个参数且是数组,则计算这个数组内的值。
|
|
636
636
|
*
|
|
637
|
-
* @example SUM(num1, num2, ...numN)
|
|
637
|
+
* @example SUM(num1, num2, ...numN) or SUM([num1, num2, ...numN])
|
|
638
638
|
* @param {...number} num - 数值
|
|
639
639
|
* @namespace 数学函数
|
|
640
640
|
*
|
|
@@ -763,7 +763,7 @@ var Evaluator = /** @class */ (function () {
|
|
|
763
763
|
/**
|
|
764
764
|
* 返回所有参数的平均值,如果只有一个参数且是数组,则计算这个数组内的值。
|
|
765
765
|
*
|
|
766
|
-
* @example AVG(num1, num2, ...numN)
|
|
766
|
+
* @example AVG(num1, num2, ...numN) or AVG([num1, num2, ...numN])
|
|
767
767
|
* @param {...number} num - 要处理的数字
|
|
768
768
|
* @namespace 数学函数
|
|
769
769
|
*
|
|
@@ -1007,7 +1007,7 @@ var Evaluator = /** @class */ (function () {
|
|
|
1007
1007
|
if (!this.isValidValue(base) || !this.isValidValue(exponent)) {
|
|
1008
1008
|
return base;
|
|
1009
1009
|
}
|
|
1010
|
-
return Math.pow(base, exponent);
|
|
1010
|
+
return Math.pow(this.formatNumber(base), this.formatNumber(exponent));
|
|
1011
1011
|
};
|
|
1012
1012
|
// 文本函数
|
|
1013
1013
|
Evaluator.prototype.normalizeText = function (raw) {
|
|
@@ -1054,6 +1054,9 @@ var Evaluator = /** @class */ (function () {
|
|
|
1054
1054
|
* @returns {number} 长度
|
|
1055
1055
|
*/
|
|
1056
1056
|
Evaluator.prototype.fnLEN = function (text) {
|
|
1057
|
+
if (text === undefined || text === null) {
|
|
1058
|
+
return 0;
|
|
1059
|
+
}
|
|
1057
1060
|
text = this.normalizeText(text);
|
|
1058
1061
|
return text === null || text === void 0 ? void 0 : text.length;
|
|
1059
1062
|
};
|
|
@@ -1071,7 +1074,7 @@ var Evaluator = /** @class */ (function () {
|
|
|
1071
1074
|
for (var _i = 0; _i < arguments.length; _i++) {
|
|
1072
1075
|
args[_i] = arguments[_i];
|
|
1073
1076
|
}
|
|
1074
|
-
return this.fnLEN.
|
|
1077
|
+
return this.fnLEN.apply(this, args);
|
|
1075
1078
|
};
|
|
1076
1079
|
/**
|
|
1077
1080
|
* 判断文本是否为空。
|
|
@@ -1099,7 +1102,7 @@ var Evaluator = /** @class */ (function () {
|
|
|
1099
1102
|
for (var _i = 0; _i < arguments.length; _i++) {
|
|
1100
1103
|
args[_i] = arguments[_i];
|
|
1101
1104
|
}
|
|
1102
|
-
return args.join('');
|
|
1105
|
+
return args.map(this.normalizeText).join('');
|
|
1103
1106
|
};
|
|
1104
1107
|
/**
|
|
1105
1108
|
* 返回计算机字符集的数字代码所对应的字符。
|
|
@@ -1315,7 +1318,7 @@ var Evaluator = /** @class */ (function () {
|
|
|
1315
1318
|
* @param {string} startString - 起始文本
|
|
1316
1319
|
* @namespace 文本函数
|
|
1317
1320
|
*
|
|
1318
|
-
* @returns {
|
|
1321
|
+
* @returns {boolean} 判断结果
|
|
1319
1322
|
*/
|
|
1320
1323
|
Evaluator.prototype.fnSTARTSWITH = function (text, search) {
|
|
1321
1324
|
search = this.normalizeText(search);
|
|
@@ -1333,7 +1336,7 @@ var Evaluator = /** @class */ (function () {
|
|
|
1333
1336
|
* @param {string} endString - 结束文本
|
|
1334
1337
|
* @namespace 文本函数
|
|
1335
1338
|
*
|
|
1336
|
-
* @returns {
|
|
1339
|
+
* @returns {boolean} 判断结果
|
|
1337
1340
|
*/
|
|
1338
1341
|
Evaluator.prototype.fnENDSWITH = function (text, search) {
|
|
1339
1342
|
search = this.normalizeText(search);
|
|
@@ -1351,7 +1354,7 @@ var Evaluator = /** @class */ (function () {
|
|
|
1351
1354
|
* @param {string} searchText - 搜索文本
|
|
1352
1355
|
* @namespace 文本函数
|
|
1353
1356
|
*
|
|
1354
|
-
* @returns {
|
|
1357
|
+
* @returns {boolean} 判断结果
|
|
1355
1358
|
*/
|
|
1356
1359
|
Evaluator.prototype.fnCONTAINS = function (text, search) {
|
|
1357
1360
|
search = this.normalizeText(search);
|
|
@@ -1421,13 +1424,17 @@ var Evaluator = /** @class */ (function () {
|
|
|
1421
1424
|
/**
|
|
1422
1425
|
* 返回文本字符串中从指定位置开始的特定数目的字符。
|
|
1423
1426
|
*
|
|
1427
|
+
* 示例:`MID("amis.baidu.com", 6, 3)`,
|
|
1428
|
+
*
|
|
1429
|
+
* 返回 `aid`。
|
|
1430
|
+
*
|
|
1424
1431
|
* @example MID(text, from, len)
|
|
1425
1432
|
* @param {string} text - 要处理的文本
|
|
1426
1433
|
* @param {number} from - 起始位置
|
|
1427
1434
|
* @param {number} len - 处理长度
|
|
1428
1435
|
* @namespace 文本函数
|
|
1429
1436
|
*
|
|
1430
|
-
* @returns {
|
|
1437
|
+
* @returns {string} 命中的位置
|
|
1431
1438
|
*/
|
|
1432
1439
|
Evaluator.prototype.fnMID = function (text, from, len) {
|
|
1433
1440
|
text = this.normalizeText(text);
|
|
@@ -1440,7 +1447,7 @@ var Evaluator = /** @class */ (function () {
|
|
|
1440
1447
|
*
|
|
1441
1448
|
* 示例:`/home/amis/a.json`,
|
|
1442
1449
|
*
|
|
1443
|
-
*
|
|
1450
|
+
* 返回:`a.json`。
|
|
1444
1451
|
*
|
|
1445
1452
|
* @example BASENAME(text)
|
|
1446
1453
|
* @param {string} text - 要处理的文本
|
|
@@ -1631,7 +1638,7 @@ var Evaluator = /** @class */ (function () {
|
|
|
1631
1638
|
* @param {date} date 日期对象
|
|
1632
1639
|
* @param {string} unit 比如可以传入 'day'、'month'、'year' 或者 `week` 等等
|
|
1633
1640
|
* @param {string} format 日期格式,可选
|
|
1634
|
-
* @returns {
|
|
1641
|
+
* @returns {any} 新的日期对象, 如果传入 format 则返回格式化后的日期字符串
|
|
1635
1642
|
*/
|
|
1636
1643
|
Evaluator.prototype.fnSTARTOF = function (date, unit, format) {
|
|
1637
1644
|
var md = moment__default["default"](this.normalizeDate(date)).startOf(unit || 'day');
|
|
@@ -1645,7 +1652,7 @@ var Evaluator = /** @class */ (function () {
|
|
|
1645
1652
|
* @param {date} date 日期对象
|
|
1646
1653
|
* @param {string} unit 比如可以传入 'day'、'month'、'year' 或者 `week` 等等
|
|
1647
1654
|
* @param {string} format 日期格式,可选
|
|
1648
|
-
* @returns {
|
|
1655
|
+
* @returns {any} 新的日期对象, 如果传入 format 则返回格式化后的日期字符串
|
|
1649
1656
|
*/
|
|
1650
1657
|
Evaluator.prototype.fnENDOF = function (date, unit, format) {
|
|
1651
1658
|
var md = moment__default["default"](this.normalizeDate(date)).endOf(unit || 'day');
|
|
@@ -1928,7 +1935,7 @@ var Evaluator = /** @class */ (function () {
|
|
|
1928
1935
|
* @param {Array<any>} arr 数组
|
|
1929
1936
|
* @namespace 数组
|
|
1930
1937
|
* @example COUNT(arr)
|
|
1931
|
-
* @returns {
|
|
1938
|
+
* @returns {number} 结果
|
|
1932
1939
|
*/
|
|
1933
1940
|
Evaluator.prototype.fnCOUNT = function (value) {
|
|
1934
1941
|
return Array.isArray(value) ? value.length : value ? 1 : 0;
|
|
@@ -1936,11 +1943,17 @@ var Evaluator = /** @class */ (function () {
|
|
|
1936
1943
|
/**
|
|
1937
1944
|
* 数组做数据转换,需要搭配箭头函数一起使用,注意箭头函数只支持单表达式用法。
|
|
1938
1945
|
*
|
|
1946
|
+
* 将数组中的每个元素转换成箭头函数返回的值。
|
|
1947
|
+
*
|
|
1948
|
+
* 示例:
|
|
1949
|
+
*
|
|
1950
|
+
* ARRAYMAP([1, 2, 3], item => item + 1) 得到 [2, 3, 4]。
|
|
1951
|
+
*
|
|
1939
1952
|
* @param {Array<any>} arr 数组
|
|
1940
1953
|
* @param {Function<any>} iterator 箭头函数
|
|
1941
1954
|
* @namespace 数组
|
|
1942
1955
|
* @example ARRAYMAP(arr, item => item)
|
|
1943
|
-
* @returns {
|
|
1956
|
+
* @returns {Array<any>} 返回转换后的数组
|
|
1944
1957
|
*/
|
|
1945
1958
|
Evaluator.prototype.fnARRAYMAP = function (value, iterator) {
|
|
1946
1959
|
var _this = this;
|
|
@@ -1955,11 +1968,15 @@ var Evaluator = /** @class */ (function () {
|
|
|
1955
1968
|
* 数据做数据过滤,需要搭配箭头函数一起使用,注意箭头函数只支持单表达式用法。
|
|
1956
1969
|
* 将第二个箭头函数返回为 false 的成员过滤掉。
|
|
1957
1970
|
*
|
|
1971
|
+
* 示例:
|
|
1972
|
+
*
|
|
1973
|
+
* ARRAYFILTER([1, 2, 3], item => item > 1) 得到 [2, 3]。
|
|
1974
|
+
*
|
|
1958
1975
|
* @param {Array<any>} arr 数组
|
|
1959
1976
|
* @param {Function<any>} iterator 箭头函数
|
|
1960
1977
|
* @namespace 数组
|
|
1961
1978
|
* @example ARRAYFILTER(arr, item => item)
|
|
1962
|
-
* @returns {
|
|
1979
|
+
* @returns {Array<any>} 返回过滤后的数组
|
|
1963
1980
|
*/
|
|
1964
1981
|
Evaluator.prototype.fnARRAYFILTER = function (value, iterator) {
|
|
1965
1982
|
var _this = this;
|
|
@@ -2127,7 +2144,7 @@ var Evaluator = /** @class */ (function () {
|
|
|
2127
2144
|
* @param { String} separator 分隔符
|
|
2128
2145
|
* @namespace 数组
|
|
2129
2146
|
* @example JOIN(arr, string)
|
|
2130
|
-
* @returns {
|
|
2147
|
+
* @returns {string} 结果
|
|
2131
2148
|
*/
|
|
2132
2149
|
Evaluator.prototype.fnJOIN = function (arr, separator) {
|
|
2133
2150
|
if (separator === void 0) { separator = ''; }
|
|
@@ -2165,7 +2182,7 @@ var Evaluator = /** @class */ (function () {
|
|
|
2165
2182
|
*
|
|
2166
2183
|
* 示例:
|
|
2167
2184
|
*
|
|
2168
|
-
* UNIQ([{a: '1'}, {b: '2'}, {a: '1'}]
|
|
2185
|
+
* UNIQ([{a: '1'}, {b: '2'}, {a: '1'}]) 得到 [{a: '1'}, {b: '2'}]。
|
|
2169
2186
|
*
|
|
2170
2187
|
* @param {Array<any>} arr 数组
|
|
2171
2188
|
* @param {string} field 字段
|
package/lib/evalutorForAsync.js
CHANGED
package/lib/filter.js
CHANGED
package/lib/function.js
CHANGED
package/lib/index.js
CHANGED
package/lib/lexer.js
CHANGED
package/lib/parser.js
CHANGED