js 常用的 方法

Set 对象的作用

1 数组去重 去掉重复的 (String / Number)

    const arr1 = [0, 0, 1, 3, 4, 5, 2, 3, 7]
    const removeDuplicates = (arr) => [...new Set(arr)]
    console.log(removeDuplicates(arr1)) // [0, 1, 3, 4, 5, 2, 7]

**2 并集 **

    const a = [1, 2, 3]
    const b = [2, 3, 4]
    const c = [4, 5, 6]
    const union1 = new Set([...a, ...b])
    const union2 = new Set([...a, ...b, ...c])
    console.log(union1); // {1, 2, 3, 4}
    console.log(union2); // {1, 2, 3, 4, 5, 6}

3 交集

    const d = new Set([1, 2, 3])
    const e = new Set([4, 3, 2])
    const intersect = new Set([...d].filter(item => e.has(item)))
    console.log(intersect); //  {2, 3}

** 4 差集**

    const f = new Set([1, 2, 3])
    const g = new Set([4, 3, 2])
    const difference = new Set([...f].filter(item => !g.has(item)))
    console.log(difference); // {1}

** 5 判断一个数组是否为空**

const a = [1,2,3]
const inNotEmpat = arr => Array.isArray(arr) && arr.length > 0;
console.log(inNotEmpat) // true

** 6 合并两个数组**

const arr1 = [1,2,3]
const arr2 = [4,5,6]
const arr3 = (a,b) => a.concat(b)
const arr4 = (a,b) => [...a,...b]
console.log(arr3(arr1,arr2) // [1,2,3,4,5,6]

7 判断一个数是奇数还是偶数

const isEven = num => num % 2 === 0
console.log(isEven(1)) // false
console.log(isEven(2)) // true

8 获取一个数组的平均值

const arr = [1,2,3,4]
const everage = (...args) => args.reduce((a,b) => a + b ) / args.length
console.log(everage(arr)) // 2.5

** 9 使用 JSON .stringify 格式化输出**

const obj = {
     age:18,
     name:"星期天",
     height:180
 }
console.log(JSON.stringify(obj,null,4))

10 字符串数字 快速转 number

const string = "1"

const num = +string
console.log(typeof num) // number

11 获取对象的全部属性值 使用 Object.values

const deps = {
    '采购部':[1,2,3],
    '人事部':[5,8,12],
    '行政部':[5,14,79],
    '运输部':[3,64,105],
}
let member = Object.values(deps).flat(Infinity);
console.log(member) // [1,2,3,5,8,12,5,14,79,3,64,105]

12 找出数组中 总和 最大 最小值

 const arr = [1,2,3,4,5];
 const total = arr.reduce((prev, curr) => prev + curr); // 总和 15
 const max = arr.reduce((per,cur) => per > cur ? per : cur); // 最大值 5
 const min = arr.reduce((per,cur) => per < cur ? per : cur); // 最小值 1

13 数组排序

const arr = [2,3,4,5,1,8,4];
const newArr = arr.sort((a,b) => a - b);
console.log(newArr); // [ 1, 2, 3, 4, 4, 5, 8 ]

14 数组中过滤掉虚假值

 const arr = [3,1,'',false]
 const newArr = arr.filter(item => item)
 console.log(newArr)

15数组去重

const arr = [1,2,3,4,5,6,7,8,9,1,2,3,4,5,6,7,8,9];
const newArr = arr.filter((item,index) => {
  return arr.indexOf(item) === index;
})

console.log(newArr); // [ 1, 2, 3, 4, 5, 6, 7, 8, 9 ]



16 表示字符串在源头

const str = 'Hello World'
console.log(str.startsWith('Hello')); // true

17 表示在尾部

const str = 'Hello World'
console.log(str.endsWith('d')) // true

18 将一个字符串重复 n 次

const str = 'Hello World'
console.log(str.repeat(2)) // Hello WorldHello World

19 去掉字符串的前后空格

const str = '   Hellow   '

console.log(str.trimStart()) // 'Hellow    '
console.log(str.trimEnd()); // '    Hellow'

20 Object.keys 的使用

let obj = {name:"张三",age:25,address:"深圳",getName:function(){}}
const objKey = Object.keys(obj) // 返回 key 值
// console.log(objKey);

let arr = [1,2,3,4,5,6]
const arrKey = Object.keys(arr) // 返回下标
// console.log(arrKey);

let str = '123456字符串'
const strKey = Object.keys(str) // 返回下标
// console.log(strKey);

// 常用
const person = {name:'星期天',age:18,address:'广州',getName:function(){}}

Object.keys(person).map(key=>{
    console.log(person[key])
})
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值