常用方法总结

关于es6中的函数 发现在日常工作中也是常用项,但是老是记不住,老要百度,特总结一下

判断是否包含

此方法不仅对 字符串生效,同样对数组也生效,对象数组不生效(仅为测试)

let str = '123456'
let str1 = '01'
let str2 = '12'
console.log(str.includes(str1)) // false
console.log(str.includes(str2)) // true
let arr = [1, 2, 3, 4]
console.log(arr.includes(1)) // true
console.log(arr.includes(0)) // false
let arrObj = [
  {
    name: 'libin',
    age: 18
  }, {
    name: 'zhangsan',
    age: 20
  }
]
console.log(arrObj.includes({
  name: 'libin',
  age: 18
})) // false

数组去重

let arr = [1, 1, 2, 2, 3, 3, 4, 4, 5, 6]
let array = new Set(arr)
console.log(array) 

在这里插入图片描述

let arr = [1, 1, 2, 2, 3, 3, 4, 4, 5, 6]
 let arr1 = [1, 2, 3]
 let array = new Set(arr)
 console.log(array)

 console.log(Array.from(new Set(arr)))

在这里插入图片描述

对象

hasOwnProperty() 方法判断一个对象(list)中是否有某个属性,如果有返回 true,否则返回 false

let obj = {
  name: 'libin',
  age: 18
}
console.log(obj.hasOwnProperty('name')) //true
console.log(obj.hasOwnProperty('age')) // true
console.log(obj.hasOwnProperty('sex')) // false

合并对象 Object.assign()

let obj1 = {
  name: 'libin',
  age: 18
}
let obj2 = {
  sex: 'female'
}
console.log(Object.assign(obj1, obj2)) // {name: "libin", age: 18, sex: "female"}

当两个对象中含有相同属性,后面的会把前面的覆盖掉

let obj1 = {
  name: 'libin',
  age: 18
}
let obj2 = {
  name: 'zhangsan',
  sex: 'female'
}
console.log(Object.assign(obj1, obj2)) // {name: "zhangsan", age: 18, sex: "female"}

Object.assign() 同样可以用来拷贝对象

let obj2 = {
  name: 'zhangsan',
  sex: 'female'
}
const copy = Object.assign({}, obj2)
console.log(copy) // {name: "zhangsan", sex: "female"}

以下方法对对象数组均适用

find()

返回存在元素,不存在 undefined

let arr = [1, 1, 2, 2, 3, 3, 4, 4, 5, 6]
console.log(arr.find(item => {
  return item === 1
})) // 1
console.log(arr.find(item => {
  return item === 2
})) // 3
console.log(arr.find(item => {
 return item === 8
})) // undefined

findIndex()

返回存在元素第一个的下标,不存在 -1

console.log(arr.findIndex(item => {
  return item === 6
})) // 9
console.log(arr.findIndex(item => {
  return item === 8
})) // -1

some()

用于检测数组中的元素是否符合条件 只要有一个符合就 true ,全部不符合 false

console.log(arr.some(item => {
 return item === 1
})) // true
console.log(arr.some(item => {
  return item > 3
})) // true
console.log(arr.some(item => {
  return item > 6
})) // false

every()

用于检测数组中的元素是否符合条件 只要有一个不符合就 false ,全部符合才会 true

console.log(arr.every(item => {
  return item > 6
})) // false
console.log(arr.every(item => {
  return item > 3
})) // false
console.log(arr.every(item => {
  return item >= 1
})) // true
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值