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

feat:有git忽略配置文件;完成部分数组库的处理内容;

上级 f24f9846
...@@ -116,4 +116,8 @@ dist ...@@ -116,4 +116,8 @@ dist
.pnp.* .pnp.*
# uniapp相关的忽略资源 # uniapp相关的忽略资源
.hbuilderx .hbuilderx/
unpackage/
# gitee相关的忽略资源
.gitee/
\ No newline at end of file
...@@ -7,35 +7,24 @@ ...@@ -7,35 +7,24 @@
**/ **/
export default { export default {
/**
* @Description 值是否包含在数组内
* @Date 2022年7月21日08:14:28
} * @Param {Array} array 数组
* @Param {Sting|Number} value 值
* @Return {Boolean} true:包含,false:不包含
/** **/
* @description 值是否包含在数组内 arrayIsContains(array, value) {
* @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; return array.indexOf(value) != -1 ? true : false;
} },
/**
/** * @Description 数组排序
* @description 数组排序 * @Date 2022年7月21日08:14:28
* @param { Array } array 数组 * @Param {Array} array 数组
* @param { Number } 排序方式 1:从小到大 2:从大到小 3:随机 * @Param {Number} 排序方式 1:从小到大 2:从大到小 3:随机
* @return { Array } 排序后的数组 * @Return {Array} 排序后的数组
* @example **/
* obj.ubArraySort([1,2,3],1);<br/> arraySort(array, type = 1) {
* [1,2,3]
*/
function ubArraySort(array, type = 1) {
return array.sort((a, b) => { return array.sort((a, b) => {
switch (type) { switch (type) {
case 1: case 1:
...@@ -48,134 +37,95 @@ function ubArraySort(array, type = 1) { ...@@ -48,134 +37,95 @@ function ubArraySort(array, type = 1) {
return array; return array;
} }
}); });
} },
/**
/** * @Description 数组去重
* @description 数组去重 * @Date 2022年7月21日08:14:28
* @param { Object } array 待去重数组 * @Param {Array} array 待去重数组
* @return { Array } 去重后的数组 * @Return {Array} 去重后的数组
* @example **/
* obj.ubArrayUnique([1,2,1]); arrayUnique(array) {
* [1,2]
*/
function ubArrayUnique(array) {
if (Array.hasOwnProperty('from')) { if (Array.hasOwnProperty('from')) {
return Array.from(new Set(array)); return Array.from(new Set(arr));
} else { } else {
let n = {}, let r = [],
r = []; NaNBol = true;
for (let i = 0; i < array.length; i++) { for (let i = 0; i < array.length; i++) {
if (!n[array[i]]) { if (array[i] !== array[i]) {
n[array[i]] = true; if (NaNBol && r.indexOf(array[i]) === -1) {
r.push(array[i]);
NaNBol = false;
}
} else {
if (r.indexOf(array[i]) === -1) {
r.push(array[i]); r.push(array[i]);
} }
} }
return r; return r;
} }
// 备注:上面 else 里面的排重并不能区分 2 和 '2',但能减少用indexOf带来的性能,暂时没找到替代的方法。。。 }
// 正确排重 },
// if (Array.hasOwnProperty('from')) { /**
// return Array.from(new Set(arr)); * @Description 求两个数组的并集
// } else { * @Date 2022年7月21日08:14:28
// let r = [], * @Param {Array} array1 第1个数组
// NaNBol = true; * @Param {Array} array2 第2个数组
// for (let i = 0; i < array.length; i++) { * @Return {Array} 数组并集
// if (array[i] !== array[i]) { **/
// if (NaNBol && r.indexOf(array[i]) === -1) { arrayUnion(array1, array2) {
// 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); let newArray = array1.concat(array2);
return ubArrayUnique(newArray); return ubArrayUnique(newArray);
} },
/**
/** * @Description 求两个数组的交集
* @description 求两个数组的交集 * @Date 2022年7月21日08:14:28
* @param { Array } array1 第1个数组 * @Param {Array} array1 第1个数组
* @param { Array } array2 第2个数 * @Param {Array} array2 第2个数组
* @return { Array } 数组交集 * @Return {Array} 数组交集
* @example **/
* obj.ubArrayIntersect([1,2],[2,3]);<br/> arrayIntersect(array1, array2) {
* [2]
*/
function ubArrayIntersect(array1, array2) {
array1 = ubArrayUnique(array1); array1 = ubArrayUnique(array1);
return map(array1, function(o) { return map(array1, function(o) {
return ubArrayIsContains(array2, o) ? o : null; return ubArrayIsContains(array2, o) ? o : null;
}); });
} },
/**
/** * @Description 删除指定元素
* @description 删除指定元素 * @Date 2022年7月21日08:14:28
* @param { Array } array 数组 * @Param {Array} array 数组
* @param { Object } value 指定值 * @Param {Sting|Number} value 待删除值
* @return { Array } 删除后的数组 * @Return {Array} 删除后的数组
* @example **/
* obj.ubArrayRemove(['1','2'],'2');<br/> arrayRemove(array, value) {
* ['1']
*/
function ubArrayRemove(array, value) {
let index = array.indexOf(value); let index = array.indexOf(value);
if (index > -1) { if (index > -1) {
array.splice(index, 1); array.splice(index, 1);
} }
return array; return array;
} },
/**
/** * @Description 删除指定数组中的元素
* @description 删除指定数组中的元素 * @Date 2022年7月21日08:14:28
* @param { Array } array 数组 * @Param {Array} array 数组
* @param { Array } array 指定值 * @Param {Array} deletArray 指定值
* @return { Array } 删除后的数组 * @Return {Array} 删除后的数组
* @example **/
* obj.ubArrayRemove(['1','2','3'],['2','3','4']);<br/> arrayRemoveArray(array, deletArray) {
* ['1'] for (let i = 0; i < deletArray.length; i++) {
*/
function ubArrayRemoveArray(array, deletArray) {
for (var i = 0; i < deletArray.length; i++) {
let index = array.indexOf(deletArray[i]); let index = array.indexOf(deletArray[i]);
if (index > -1) { if (index > -1) {
array.splice(index, 1); array.splice(index, 1);
} }
} }
return array; return array;
} },
/**
/** * @Description 将类数组转换成数组
* @description 将类数组转换成数组 * @Date 2022年7月21日08:14:28
* @param { Object } ary 类数组 * @Param {Object} ary 类数组
* @return { Array } 数组 * @Return {Array} 数组
* @example **/
* let ary = {<br/> arrayFromArrayLike(araryLike) {
* 0:'a',<br/>
* 1:'第二',<br/>
* 4:'1234',<br/>
* length:3<br/>
* };<br/>
* obj.ubArrayFromArray(art);<br/>
* ['a','第二','1234']
*/
function ubArrayFromArrayLike(araryLike) {
let array = []; let array = [];
if (Array.isArray(araryLike)) { if (Array.isArray(araryLike)) {
array = araryLike; array = araryLike;
...@@ -184,32 +134,33 @@ function ubArrayFromArrayLike(araryLike) { ...@@ -184,32 +134,33 @@ function ubArrayFromArrayLike(araryLike) {
array = Array.prototype.slice.call(araryLike,1); array = Array.prototype.slice.call(araryLike,1);
} }
return array; return array;
} },
/**
/** * @Description 数组最大值
* @description 数组最大值 * @Date 2022年7月21日08:14:28
* @param { Array } array 数组 * @Param {Array} array 数组
* @return { Object } 最大值 * @Return {String|Number} 最大值
* @example **/
* obj.ubArrayMax([1,1,2,3,3]);<br/> arrayMax(array) {
* 3
*/
function ubArrayMax(array) {
return Math.max.apply(null, array); return Math.max.apply(null, array);
} },
/**
/** * @Description 数组最小值
* @description 数组最小值 * @Date 2022年7月21日08:14:28
* @param { Array } array 数组 * @Param {Array} array 数组
* @return { Object } 最小值 * @Return {String|Number} 最小值
* @example **/
* obj.ubArrayMin([1,1,2]);<br/> arrayMin(array) {
* 1
*/
function ubArrayMin(array) {
return Math.min.apply(null, array); return Math.min.apply(null, array);
}
} }
/** /**
* @description 数组求和 * @description 数组求和
* @param { Object } array 数组 * @param { Object } array 数组
...@@ -270,18 +221,3 @@ function each(array, fn) { ...@@ -270,18 +221,3 @@ function each(array, fn) {
} }
} }
} }
export default {
ubArrayIsContains,
ubArraySort,
ubArrayUnique,
ubArrayUnion,
ubArrayIntersect,
ubArrayRemove,
ubArrayRemoveArray,
ubArrayFromArrayLike,
ubArrayMax,
ubArrayMin,
ubArraySum,
ubArrayAverage
}
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册