10.17记录
数据的截取
给定一个字符串,将字符串根据指定的符号进行分割,并且取出分割后的结果
let str ='b90812ad;117'
let pre = str.substr(0, str.indexOf(';'))
console.log(pre) // b90812ad
let next = str.substr(str.indexOf(';') + 1, str.length)
console.log(next) // 117
数据的修改
后端返回的base64图片数据,没有带 'data:image/jpeg;base64,'
.给每一项添加此前缀
let img = ['img1', 'img2', 'img3']
let imgBase64 = img.map(v => {
return 'data:image/jpeg;base64,' + v
})
console.log(imgBase64)
多个图片删除,找出删除图片的索引
这个本来是很简单的,但是在移除图片的时候。怎么获取移除图片的索引。用到的方法还是indexOf
正所谓猫找猫 狗找狗。求索引,还是得在对的地方找
handleRemove(file, fileList, item, index, indexSub) {
var realyId = item.indexOf(file)
// item里面以数组的形式包含了file.只有这样,才能找到你删的是那张图片的索引
那你肯定好奇,item为什么跟file一样呢,因为我掉了转base64的接口。然后将数据,添加进去的
10.19记录
判断数组所有数据是否满足条件,满足返true,不满足返回false
let arr = [1, 2, 3, 4, 5]
let eve = arr.every(v => {
return v > 0
})
console.log('eve', eve) // true
11.5记录
this.list.forEach(element => {
this.$set(element, 'price', this.price)
});
12.14记录
数组扁平化
https://www.cnblogs.com/wind-lanyan/p/9044130.html
- 虽然说写了5种方法,但是核心也只有一个:
遍历数组arr,若arr[i]为数组则递归遍历,直至arr[i]不为数组然后与之前的结果concat。
12.28记录
给对象添加属性
this.menuList.forEach((val) => {
val.equipment = val.devices ? val.devices.length : 0
})
利用reduce,计算对象里面的值
computed: {
equipmentAll() {
return this.menuList.reduce((prev, cur) => {
return cur.equipment + prev
}, 0)
}
}
}
1.14记录
删除指定元素
let arr = ['1','2','3']
let index= arr.indexOf('2') // indexOf,会返回当前元素的索引,因为索引是从0开始,所以判断条件为>1
if (index > -1) {
arr.splice(index,1)
conso.log(arr) // [ '1', '3' ]
}
数组去重,拷贝
var qc = ['1', '2', '3', '2']
var arrq = [...new Set(qc)]
console.log(arrq); // [ '1', '2', '3' ]
二维数组转化为一数组
let er = [['1'], ['2'], ['3'], ['2']].reduce((prev, next) => {
return prev.concat(next)
})
console.log(er);// [ '1', '2', '3', '2' ]
数组里面的字符串转数字
let str = ['1', '2', '3']
let s = str.map(Number)
console.log(s); // [ 1, 2, 3 ]
转字符串
let num = [1, 2, 3]
let s = num.map(String)
console.log(s); //[ '1', '2', '3' ]
4.9记录
去除数组中的空元素
let arr = [null, null, 1, null, 3]
const arrFill = arr.filter((e) => {
return e != null
})
console.log('arrFill', arrFill);