diff --git a/apis/login.js b/apis/login.js new file mode 100644 index 0000000000000000000000000000000000000000..87248e159a21e9bdd302458e33499cf528100fe2 --- /dev/null +++ b/apis/login.js @@ -0,0 +1,7 @@ +/** +* @Author: xiaozuo28 +* @Date: 2022年5月13日08:05:20 +* @LastEditors: xiaozuo28 +* @LastEditTime: 2022年7月19日23:47:40 +* @Description: Boolean数据处理 +**/ \ No newline at end of file diff --git a/apis/register.js b/apis/register.js new file mode 100644 index 0000000000000000000000000000000000000000..87248e159a21e9bdd302458e33499cf528100fe2 --- /dev/null +++ b/apis/register.js @@ -0,0 +1,7 @@ +/** +* @Author: xiaozuo28 +* @Date: 2022年5月13日08:05:20 +* @LastEditors: xiaozuo28 +* @LastEditTime: 2022年7月19日23:47:40 +* @Description: Boolean数据处理 +**/ \ No newline at end of file diff --git a/utils/help/xzArray.js b/utils/help/xzArray.js index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..a0be783308800865bcc90d79031185e772f1a63c 100644 --- a/utils/help/xzArray.js +++ b/utils/help/xzArray.js @@ -0,0 +1,287 @@ +/** +* @Author: xiaozuo28 +* @Date: 2022年5月13日08:05:20 +* @LastEditors: xiaozuo28 +* @LastEditTime: 2022年7月19日23:47:40 +* @Description: Array数据处理 +**/ + +export default { + + + +} + + +/** + * @description 值是否包含在数组内 + * @param { Object } array 数组 + * @param { Object } value 值 + * @return { Boolean } true:包含,false:不包含 + * @example + * obj.ubArrayIsContains([1,2],2);
+ * true + */ +function ubArrayIsContains(array, value) { + return array.indexOf(value) != -1 ? true : false; +} + +/** + * @description 数组排序 + * @param { Array } array 数组 + * @param { Number } 排序方式 1:从小到大 2:从大到小 3:随机 + * @return { Array } 排序后的数组 + * @example + * obj.ubArraySort([1,2,3],1);
+ * [1,2,3] + */ +function ubArraySort(array, type = 1) { + return array.sort((a, b) => { + switch (type) { + case 1: + return a - b; + case 2: + return b - a; + case 3: + return Math.random() - 0.5; + default: + return array; + } + }); +} + +/** + * @description 数组去重 + * @param { Object } array 待去重数组 + * @return { Array } 去重后的数组 + * @example + * obj.ubArrayUnique([1,2,1]); + * [1,2] + */ +function ubArrayUnique(array) { + if (Array.hasOwnProperty('from')) { + return Array.from(new Set(array)); + } else { + let n = {}, + r = []; + for (let i = 0; i < array.length; i++) { + if (!n[array[i]]) { + n[array[i]] = true; + r.push(array[i]); + } + } + return r; + } + // 备注:上面 else 里面的排重并不能区分 2 和 '2',但能减少用indexOf带来的性能,暂时没找到替代的方法。。。 + // 正确排重 + // if (Array.hasOwnProperty('from')) { + // return Array.from(new Set(arr)); + // } else { + // let r = [], + // NaNBol = true; + // for (let i = 0; i < array.length; i++) { + // if (array[i] !== array[i]) { + // if (NaNBol && r.indexOf(array[i]) === -1) { + // r.push(array[i]); + // NaNBol = false; + // } + // } else { + // if (r.indexOf(array[i]) === -1) { + // r.push(array[i]); + // } + // } + // return r; + // } + // } +} + +/** + * @description 求两个数组的并集 + * @param { Array } array1 第1个数组 + * @param { Array } array2 第2个数组 + * @return { Array } 数组并集 + * @example + * obj.ubArrayUnion([1,2],[2,3]);
+ * [1,2,3] + */ +function ubArrayUnion(array1, array2) { + let newArray = array1.concat(array2); + return ubArrayUnique(newArray); +} + +/** + * @description 求两个数组的交集 + * @param { Array } array1 第1个数组 + * @param { Array } array2 第2个数 + * @return { Array } 数组交集 + * @example + * obj.ubArrayIntersect([1,2],[2,3]);
+ * [2] + */ +function ubArrayIntersect(array1, array2) { + array1 = ubArrayUnique(array1); + return map(array1, function(o) { + return ubArrayIsContains(array2, o) ? o : null; + }); +} + +/** + * @description 删除指定元素 + * @param { Array } array 数组 + * @param { Object } value 指定值 + * @return { Array } 删除后的数组 + * @example + * obj.ubArrayRemove(['1','2'],'2');
+ * ['1'] + */ +function ubArrayRemove(array, value) { + let index = array.indexOf(value); + if (index > -1) { + array.splice(index, 1); + } + return array; +} + +/** + * @description 删除指定数组中的元素 + * @param { Array } array 数组 + * @param { Array } array 指定值 + * @return { Array } 删除后的数组 + * @example + * obj.ubArrayRemove(['1','2','3'],['2','3','4']);
+ * ['1'] + */ +function ubArrayRemoveArray(array, deletArray) { + for (var i = 0; i < deletArray.length; i++) { + let index = array.indexOf(deletArray[i]); + if (index > -1) { + array.splice(index, 1); + } + } + return array; +} + +/** + * @description 将类数组转换成数组 + * @param { Object } ary 类数组 + * @return { Array } 数组 + * @example + * let ary = {
+ * 0:'a',
+ * 1:'第二',
+ * 4:'1234',
+ * length:3
+ * };
+ * obj.ubArrayFromArray(art);
+ * ['a','第二','1234'] + */ +function ubArrayFromArrayLike(araryLike) { + let array = []; + if (Array.isArray(araryLike)) { + array = araryLike; + } else { + araryLike.length = araryLike.length + 1; + array = Array.prototype.slice.call(araryLike,1); + } + return array; +} + +/** + * @description 数组最大值 + * @param { Array } array 数组 + * @return { Object } 最大值 + * @example + * obj.ubArrayMax([1,1,2,3,3]);
+ * 3 + */ +function ubArrayMax(array) { + return Math.max.apply(null, array); +} + +/** + * @description 数组最小值 + * @param { Array } array 数组 + * @return { Object } 最小值 + * @example + * obj.ubArrayMin([1,1,2]);
+ * 1 + */ +function ubArrayMin(array) { + return Math.min.apply(null, array); +} + +/** + * @description 数组求和 + * @param { Object } array 数组 + * @return { Number } 数组和 + * @example + * obj.ubArraySum([1,2,3]);
+ * 6 + */ +function ubArraySum(array) { + return array.reduce((pre, cur) => { + return pre + cur; + }); +} + +/** + * @description 数组求平均值 + * @param { Object } array 数组 + * @return { Number } 平均值 + * @example + * obj.ubArrayAverage([1,2,3]);
+ * 2 + */ +function ubArrayAverage(array) { + return ubArraySum(array) / array.length; +} + +/** + * @param { array } 数组 + * @param { fn } 回调函数 + * @param { thisObj } this指向 + * @return { Array } + */ +function map(array, fn, thisObj) { + let scope = thisObj || window; + let result = []; + for (let i = 0, j = array.length; i < j; ++i) { + let res = fn.call(scope, array[i], i, this); + if (res != null) { + result.push(res); + } + } + return result; +} + +/** + * @param {Array} 数组 + * @param { Function } 回调函数 + * @return { undefined } + */ +function each(array, fn) { + fn = fn || Function; + let a = []; + let args = Array.prototype.slice.call(arguments, 1); + for (let i = 0; i < array.length; i++) { + let res = fn.apply(array, [array].concat(args)); + if (res != null) { + a.push(res); + } + } +} + +export default { + ubArrayIsContains, + ubArraySort, + ubArrayUnique, + ubArrayUnion, + ubArrayIntersect, + ubArrayRemove, + ubArrayRemoveArray, + ubArrayFromArrayLike, + ubArrayMax, + ubArrayMin, + ubArraySum, + ubArrayAverage +} diff --git a/utils/help/xzFile.js b/utils/help/xzFile.js index f00cd579d2f225ae2660b06daa64799b8e21a7b5..828a11fe41cd84787389e9ab04efa92d45bc9496 100644 --- a/utils/help/xzFile.js +++ b/utils/help/xzFile.js @@ -3,7 +3,7 @@ * @Date: 2022年5月13日08:05:20 * @LastEditors: xiaozuo28 * @LastEditTime: 2022年7月17日08:42:42 -* @Description: 文件处理 +* @Description: File数据处理 **/ export default { diff --git a/utils/help/xzImage.js b/utils/help/xzImage.js index a75522b82c10d94feee948dfa779f3ab9e4a69ad..6595668d8d653f8ce8127e1eb145a55ce790cf83 100644 --- a/utils/help/xzImage.js +++ b/utils/help/xzImage.js @@ -3,7 +3,7 @@ * @Date: 2022年5月13日08:05:20 * @LastEditors: xiaozuo28 * @LastEditTime: 2022年7月17日08:42:42 -* @Description: 图片处理 +* @Description: Image数据处理 **/ export default { diff --git a/utils/help/xzNumber.js b/utils/help/xzNumber.js index e234612ae2d2df42dc8d5327442dfbdf25dd356d..92532009879bb1a54c87f17ba5746311a9081d42 100644 --- a/utils/help/xzNumber.js +++ b/utils/help/xzNumber.js @@ -3,7 +3,7 @@ * @Date: 2022年5月13日08:05:20 * @LastEditors: xiaozuo28 * @LastEditTime: 2022年7月17日08:42:42 -* @Description: 数字处理 +* @Description: Number数据处理 **/ export default { diff --git a/utils/help/xzString.js b/utils/help/xzString.js index 78366cddb8f35f0eb73a634de3a879dd7293c3fc..256eaa7937d6a41df0b9525ff41e04e751b7f7ba 100644 --- a/utils/help/xzString.js +++ b/utils/help/xzString.js @@ -3,7 +3,7 @@ * @Date: 2022年5月13日08:05:20 * @LastEditors: xiaozuo28 * @LastEditTime: 2022年7月19日23:47:40 -* @Description: Boolean数据处理 +* @Description: String数据处理 **/ export default {