問題所在
這段時(shí)間發(fā)現(xiàn)一些方法頻繁用到堕油,特此總結(jié)起來仙蛉,方便我以后的開發(fā)查閱茅坛,希望隊(duì)伍越來越壯大??
1. 數(shù)組去重
unique (arr) {
return Array.from(new Set(arr))
},
2.對(duì)象數(shù)組去重
doWeight(arr){
var result = [];
var obj = {};
for(var i =0; i<arr.length; i++){
if(!obj[arr[i].value]){// 這里是根據(jù)value屬性去重酱畅,可以隨意更改
result.push(arr[i]);
obj[arr[i].value] = true;
}
}
return result;
},
3. 對(duì)象數(shù)組中根據(jù)某個(gè)對(duì)象的一個(gè)鍵值對(duì),刪除對(duì)應(yīng)對(duì)象
removeByValue(arr, attr, value){
let index = 0
for(let i in arr){
if(arr[i][attr]===value){
index=i;
break;
}
}
arr.splice(index,1);
},
// 舉個(gè)栗子:list=[{id:1,name:'凱',des:'皮膚可真丑'},{id:2,name:'白晶晶',des:'錨點(diǎn)皮膚pei'}]
// removeByValue(list, 'id', 1)
// 結(jié)果為:list=[{id:2,name:'白晶晶',des:'錨點(diǎn)皮膚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
},
// 舉個(gè)栗子:this.getStrLength('理解bl')
// 結(jié)果為:6
5. 得到html中某一塊的結(jié)構(gòu)
this.$nextTick(function () {
var columnTree = document.getElementById('custom-tree')
console.log(columnTree)
});
6.日期由中國標(biāo)準(zhǔn)時(shí)間轉(zhuǎn)變成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;
},