问题所在
这段时间发现一些方法频繁用到,特此总结起来,方便我以后的开发查阅,希望队伍越来越壮大😀
1. 数组去重
unique (arr) {
return Array.from(new Set(arr))
},
2.对象数组去重
doWeight(arr){
var result = [];
var obj = {};
for(var i =0; i<arr.length; i++){
if(!obj[arr[i].value]){// 这里是根据value属性去重,可以随意更改
result.push(arr[i]);
obj[arr[i].value] = true;
}
}
return result;
},
3. 对象数组中根据某个对象的一个键值对,删除对应对象
removeByValue(arr, attr, value){
let index = 0
for(let i in arr){
if(arr[i][attr]===value){
index=i;
break;
}
}
arr.splice(index,1);
},
// 举个栗子:list=[{id:1,name:'凯',des:'皮肤可真丑'},{id:2,name:'白晶晶',des:'锚点皮肤pei'}]
// removeByValue(list, 'id', 1)
// 结果为:list=[{id:2,name:'白晶晶',des:'锚点皮肤pei'}]
4. 获取所传字符串所占字符
getStrLength(str){
let len = 0
for (let i = 0; i < str.length; i++) {
if (str.charCodeAt(i) > 127 || str.charCodeAt(i) === 94) {
len += 2;
} else {
len++;
}
}
return len
},
// 举个栗子:this.getStrLength('理解bl')
// 结果为:6
5. 得到html中某一块的结构
this.$nextTick(function () {
var columnTree = document.getElementById('custom-tree')
console.log(columnTree)
});
6.日期由中国标准时间转变成UTC格式
dateFormat:function(time) {
var date=new Date(time);
var year=date.getFullYear();
var month= date.getMonth()+1<10 ? "0"+(date.getMonth()+1) : date.getMonth()+1;
var day=date.getDate()<10 ? "0"+date.getDate() : date.getDate();
var hours=date.getHours()<10 ? "0"+date.getHours() : date.getHours();
var minutes=date.getMinutes()<10 ? "0"+date.getMinutes() : date.getMinutes();
var seconds=date.getSeconds()<10 ? "0"+date.getSeconds() : date.getSeconds();
return year+"-"+month+"-"+day+" "+hours+":"+minutes+":"+seconds;
},