快来看JS的的几个常用算法(持续更新中)

这篇博客介绍了JavaScript中的一些实用数组操作方法,包括去重、数组并集、交集、差集以及统计相同项个数。还展示了如何使用reduce方法实现filter和map功能,以及将字符串转换为数字、过滤假值、取整和判断奇偶等基本操作。通过这些技巧,可以更高效地处理和操作数组数据。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

数组去重

// 第一种方法
let arr = [1,1,2,3,4];
function fun(v) {
    return Array.from(new Set(v))
}
console.log(fun(arr)) //[1,2,3,4]
// 第二种方法
let qc= [...new Set(arr)]

console.log(qc) //[1,2,3,4]

数组并集

let arr0 = ['a','b','c'];
let arr2 = ['c','d'];
let a=new Set(arr0);
let b=new Set(arr2);
let bj = new Set([...a,...b]);

console.log(bj);//{“a”, “b”, “c”, “d”}

数组交集

let jj = new Set([…a].filter(x=>b.includes(x)));
console.log(jj);//{“c”}

数组差集

let cj = new Set([...a].filter(x=>!b.includes(x)));

console.log(cj);//{“a”, “b”}

统计数组相同项的个数

let arr6=['a','a','a','b','c','c'];
let arr6obj=arr6.reduce(function(obj,name){
    obj[name]=obj[name]?++obj[name]:1;
    return obj;
},{})

console.log(arr6obj)// {a: 3, b: 1, c: 2}

数组方法reduce()实现filter、map

let arr7=[2,3,10];
const arro=arr7.reduce(function(list,num){
    num=num*2;
    if(num>=20){
        list.push(num)
    }
    return list;
},[])

console.log(arro);//[20]

字符串转换为数字

let num1='1' * 1;

console.log(typeof num1) //number

使用Boolean过滤数组中的所有假值

let jz=[0,null,false,NaN,1,2];
const filter1=arr1=>arr1.filter(Boolean);

console.log(filter1(jz)) //[1,2]

取整

let num2=1.223;

console.log(num2|0);//1

判断奇偶

let num3=3;

console.log(!!(num3 & 1));//true

更多请见:http://www.mark-to-win.com/tutorial/50933.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值