【日常记录】【JS】非常实用的JavaScript一行代码

整理前端开发过程中,常用的代码

1. 浏览器相关

1.1 获取指定key的cookie

可以从这里看到当前网址的所有 cookie,也可以用JS脚本,document.cookie 获取到所有的cookie

在这里插入图片描述

document.cookie.replace(/(?:(?:^|.*;\s*)cookieName\s*\=\s*([^;]*).*$)|^.*$/, "$1");

cookieName 换成你要获取的cookie 键名称

1.2 重定向到一个url

const redirect = url => location.href = url

redirect("http://www.baidu.com")

1.3 滚动到界面顶部

const goToTop = () => window.scrollTo(0, 0);

goToTop();

这个是瞬间滚动,具体的滚动可以查看这个文章 【日常记录】【JS】Web浏览器滚动方案,Window:scrollTo()、Window:scrollBy()、Element.scrollIntoView() 三种方案

1.4 检查电脑是否是黑暗环境

const isDarkMode = window.matchMedia && window.matchMedia('(prefers-color-scheme: dark)').matches

console.log(isDarkMode)

在这里插入图片描述

当在window设置,选择这个深色的时候,就变成了,true

2. 颜色相关

2.1 rgb转换成十六进制

const rgbToHex = (r, g, b) => "#" + ((1 << 24) + (r << 16) + (g << 8) + b).toString(16).slice(1);

rgbToHex(255, 255, 255);  // '#ffffff'

2.2 获取一个随机生成的 16进制颜色

const randomHex = () => `#${Math.floor(Math.random() * 0xffffff).toString(16).padEnd(6, "0")}`;

randomHex();

3. 数字相关

3.1 获取两个整数之间的随机数

const random = (min, max) => Math.floor(Math.random() * (max - min + 1) + min);

random(100, 200);

3.2 数字格式化

对数字,常见的操作的是 千分位小数保留几位小数不足位数填充添加货币符号等操作

具体操作可以看这个文章 【日常记录】【JS】使用Number.prototype.toLocaleString 对 数字做 格式化

    const number = 123456.65491;
    console.log(number.toLocaleString());// 123,456.654

    //  取消 分隔符
    console.log(number.toLocaleString(undefined, { useGrouping: false }));// 123456.655
    console.log(number.toLocaleString("zh-Hans-CN-u-nu-hanidec"));// 一二三,四五六.六五五

4. 数组相关

4.1 数组消除重复项

const removeDuplicates = (arr) => [...new Set(arr)];

console.log(removeDuplicates([2,3,3,4]));

4.2 合并两个数组

const merge = (a, b) => [...a, ...b];

4.3 判断是否是数组

const isArray = arr => Array.isArray(arr);

isArray([1, 2, 3]);

在这里插入图片描述

5. 字符串相关

5.1 字符串反转

const reverse = str => str.split('').reverse().join('');

reverse('hello ddg'); 

5.2 首字母大写

const capitalize = str => str.charAt(0).toUpperCase() + str.slice(1)

capitalize("hello world")  // Hello world
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值