项目中常用的js技巧--持续更新

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);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值