提交 f24f9846 编写于 作者: 小刘28's avatar 小刘28 💬

feat:调整部分页面的注释;添加api相关处理;

上级 c95b2e08
/**
* @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
/**
* @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
/**
* @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);<br/>
* 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);<br/>
* [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]);<br/>
* [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]);<br/>
* [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');<br/>
* ['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']);<br/>
* ['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 = {<br/>
* 0:'a',<br/>
* 1:'第二',<br/>
* 4:'1234',<br/>
* length:3<br/>
* };<br/>
* obj.ubArrayFromArray(art);<br/>
* ['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]);<br/>
* 3
*/
function ubArrayMax(array) {
return Math.max.apply(null, array);
}
/**
* @description 数组最小值
* @param { Array } array 数组
* @return { Object } 最小值
* @example
* obj.ubArrayMin([1,1,2]);<br/>
* 1
*/
function ubArrayMin(array) {
return Math.min.apply(null, array);
}
/**
* @description 数组求和
* @param { Object } array 数组
* @return { Number } 数组和
* @example
* obj.ubArraySum([1,2,3]);<br/>
* 6
*/
function ubArraySum(array) {
return array.reduce((pre, cur) => {
return pre + cur;
});
}
/**
* @description 数组求平均值
* @param { Object } array 数组
* @return { Number } 平均值
* @example
* obj.ubArrayAverage([1,2,3]);<br/>
* 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
}
......@@ -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 {
......
......@@ -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 {
......
......@@ -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 {
......
......@@ -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 {
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册