Js 一行代码

【掘金】原贴
这个帖子感觉挺好,能提取成公共Utils。代码简介且实用
所以做一下笔记

  1. 获取字符串中的字符数
const chartCount = (str, chart) => str.split(chart).length - 1

根据字符串chart分割成数组的原理。看看分割成的数组长度。然后-1

  1. 检查对象是否为空
    对象为空 判断==={} 也是会返回false的。

因为引用类型是地址指针。a={},b={} a===b 也会是false,因为他们是不同的指向堆栈中的指针

判断是否为对象,对象的键的长度是否为0

const isEmpty = obj => obj.constructor === Object && obj.Reflect.ownKeys(obj).lenght === 0 
let isempty = (obj) => Object.keys(obj).length ===0
  1. 检查设备上的触摸支持
const touchSupported = () => ('ontouchstart' in window || DocumentTouch && document instanceof DocumentTouch)
  1. 随机排列数组
    sort,数字排序失效。给sort()添加一个回调函数,根据回调函数的返回值来自定义排序规则:

    如果 返回值 > 0,则元素交换位置
    如果 返回值 < 0,则元素位置不变
    如果 返回值 = 0,则认为两个元素相等,不交换位置

const shuffle = arr => arr.sort(() =>0.5 - Match.random())
  1. 获取随机布尔值
const getRandomBoolearn = () => Match.random() >=0.5

如果你想得到一个概率为 70% 的随机布尔值,那么你可以简单地将 0.5 更改为 0.7 等等。

  1. 计算数组的平均值
    reduce (累加器)来获取一行中数组的总和
const average =(arr) => arr.reduce((a,b) => a + b) / arr.length
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值